Added ReadString method to file
This commit is contained in:
parent
47517d7139
commit
3a0fc0d57c
23
file/file.go
23
file/file.go
@ -75,6 +75,29 @@ func (file *File) ReadRune () (char rune, size int, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
// ReadString reads until the first occurrence of delimiter in the input,
|
||||
// returning a string containing the data up to and including the delimiter. If
|
||||
// ReadString encounters an error before finding a delimiter, it returns the
|
||||
// data read before the error and the error itself (often io.EOF). ReadString
|
||||
// returns err != nil if and only if the returned data does not end in delim.
|
||||
func (file *File) ReadString (delimiter byte) (read string, err error) {
|
||||
read, err = file.reader.ReadString(delimiter)
|
||||
|
||||
// store the character in the file
|
||||
for _, char := range read {
|
||||
if char == '\n' {
|
||||
file.lines = append(file.lines, "")
|
||||
file.currentLine ++
|
||||
file.currentColumn = 0
|
||||
} else {
|
||||
file.lines[file.currentLine] += string(char)
|
||||
file.currentColumn ++
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// Close closes the file. After the file is closed, data that has been read will
|
||||
// still be retained, and errors can be reported.
|
||||
func (file *File) Close () {
|
||||
|
Reference in New Issue
Block a user