Skip to content

jrus/stringio-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

StringIO

File-like objects that read from or write to a string buffer.

A nearly direct port of Python’s StringIO module.

f = StringIO()       # ready for writing
f = StringIO(buf)    # ready for reading
f.close()            # explicitly release resources held
pos = f.tell()       # get current position
f.seek(pos)          # set current position
f.seek(pos, mode)    # mode 0: absolute; 1: relative; 2: relative to EOF
buf = f.read()       # read until EOF
buf = f.read(n)      # read up to n bytes
buf = f.readline()   # read until end of line ('\n') or EOF
list = f.readlines() # list of f.readline() results until EOF
f.truncate([size])   # truncate file to at most size (default: current pos)
f.write(buf)         # write at current position
f.writelines(list)   # for line in list: f.write(line)
f.getvalue()         # return whole file's contents as a string

Notes:

  • Seeking far beyond EOF and then writing will insert real null bytes that occupy space in the buffer.

  • There's a simple test set (see end of this file).

Copyright (c) 2012 Jacob Rus. Licensed under the MIT License.

About

Javascript port of Python’s StringIO module

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published