summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeepak Vishwakarma <deepak.m.shrma@gmail.com>2020-06-06 11:43:42 +0800
committerGitHub <noreply@github.com>2020-06-05 23:43:42 -0400
commitee192b075819ccc3a6e3dfbf0eab36fd090fced4 (patch)
tree6825980d4a0bdd0169a40dfb13d66adde725fe33
parented5aedc6b4a1d72208649afd8793e288d94021b1 (diff)
added documentation with sample for std/io mod (#6106)
-rw-r--r--std/io/README.md125
1 files changed, 125 insertions, 0 deletions
diff --git a/std/io/README.md b/std/io/README.md
new file mode 100644
index 000000000..2432a468b
--- /dev/null
+++ b/std/io/README.md
@@ -0,0 +1,125 @@
+# std/io
+
+## Bufio
+
+**Uses:**
+
+### readLines
+
+Read reader[like file], line by line
+
+```ts title="readLines"
+import { readLines } from "https://deno.land/std/io/mod.ts";
+import * as path from "https://deno.land/std/path/mod.ts";
+
+const filename = path.join(Deno.cwd(), "std/io/README.md");
+let fileReader = await Deno.open(filename);
+
+for await (let line of readLines(fileReader)) {
+ console.log(line);
+}
+```
+
+**Output:**
+
+````text
+# std/io
+
+## readLines
+
+```ts
+import * as path from "https://deno.land/std/path/mod.ts";
+
+## Rest of the file
+````
+
+### readStringDelim
+
+Read reader`[like file]` chunk by chunk, splitting based on delimiter.
+
+```ts title="readStringDelim"
+import { readLines } from "https://deno.land/std/io/mod.ts";
+import * as path from "https://deno.land/std/path/mod.ts";
+
+const filename = path.join(Deno.cwd(), "std/io/README.md");
+let fileReader = await Deno.open(filename);
+
+for await (let line of readStringDelim(fileReader, "\n")) {
+ console.log(line);
+}
+```
+
+**Output:**
+
+````text
+# std/io
+
+## readLines
+
+```ts
+import * as path from "https://deno.land/std/path/mod.ts";
+
+## Rest of the file
+````
+
+## Reader
+
+### StringReader
+
+Create a `Reader` object for `string`.
+
+```ts
+import { StringReader } from "https://deno.land/std/io/mod.ts";
+
+const data = new Uint8Array(6);
+const r = new StringReader("abcdef");
+const res0 = await r.read(data);
+const res1 = await r.read(new Uint8Array(6));
+
+// Number of bytes read
+console.log(res0); // 6
+console.log(res1); // null, no byte left to read. EOL
+
+// text
+
+console.log(new TextDecoder().decode(data)); // abcdef
+```
+
+**Output:**
+
+```text
+6
+null
+abcdef
+```
+
+## Writer
+
+### StringWriter
+
+Create a `Writer` object for `string`.
+
+```ts
+import {
+ StringWriter,
+ StringReader,
+ copyN,
+} from "https://deno.land/std/io/mod.ts";
+
+const w = new StringWriter("base");
+const r = new StringReader("0123456789");
+await copyN(r, w, 4); // copy 4 bytes
+
+// Number of bytes read
+console.log(w.toString()); //base0123
+
+await Deno.copy(r, w); // copy all
+console.log(w.toString()); // base0123456789
+```
+
+**Output:**
+
+```text
+base0123
+base0123456789
+```