Skip to content

Instantly share code, notes, and snippets.

@horatio-sans-serif
Created April 19, 2010 00:28
Show Gist options
  • Save horatio-sans-serif/370646 to your computer and use it in GitHub Desktop.
Save horatio-sans-serif/370646 to your computer and use it in GitHub Desktop.
~ ⚡ node /tmp/readself.js
contents length = 551
buffer length before write = 551
buffer length after write = 551
not the same
contents
// file start
sys=require("sys");
fs=require("fs");
Buffer=require("buffer").Buffer;
contents=fs.readFileSync(__filename, encoding="utf8"); // ö日本語
sys.puts("contents length = "+contents.length);
b=new Buffer(contents.length);
sys.puts("buffer length before write = " + b.length);
b.utf8Write(contents, 0); // 0=offset
sys.puts("buffer length after write = " + b.length);
sliceStr=b.utf8Slice(0, b.length);
if (contents != sliceStr) {
sys.puts("not the same");
sys.puts("contents\n" + contents);
sys.puts("buffer\n" + sliceStr);
}
// file end
buffer
// file start
sys=require("sys");
fs=require("fs");
Buffer=require("buffer").Buffer;
contents=fs.readFileSync(__filename, encoding="utf8"); // ö日本語
sys.puts("contents length = "+contents.length);
b=new Buffer(contents.length);
sys.puts("buffer length before write = " + b.length);
b.utf8Write(contents, 0); // 0=offset
sys.puts("buffer length after write = " + b.length);
sliceStr=b.utf8Slice(0, b.length);
if (contents != sliceStr) {
sys.puts("not the same");
sys.puts("contents\n" + contents);
sys.puts("buffer\n" + sliceStr);
}
// fil
@horatio-sans-serif
Copy link
Author

byte length is 558

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment