diff options
Diffstat (limited to 'Source/Kernel/VFS/TextFile.class.cpp')
-rw-r--r-- | Source/Kernel/VFS/TextFile.class.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Source/Kernel/VFS/TextFile.class.cpp b/Source/Kernel/VFS/TextFile.class.cpp new file mode 100644 index 0000000..a877392 --- /dev/null +++ b/Source/Kernel/VFS/TextFile.class.cpp @@ -0,0 +1,21 @@ +#include "TextFile.class.h" + +bool TextFile::write(String str, bool addnl) { + ByteArray a(str, m_encoding); + if (addnl) a += (u8int)'\n'; + return File::write(a); +} + +String TextFile::readLine(char separator) { + ByteArray buffer; + while (1) { + char c; + if (read(1, (u8int*)&c) == 0) { + return buffer.toString(m_encoding); + } + if (c == separator) { + return buffer.toString(m_encoding); + } + buffer += (u8int)c; + } +} |