using System; using System.IO; using System.Text; class MainClass { static void Main() { using (FileStream fs = new FileStream("test.txt", FileMode.Create)) { using (StreamWriter w = new StreamWriter(fs, Encoding.UTF8)) { w.WriteLine(124.23M); w.WriteLine("Test string"); w.WriteLine('!'); } } using (FileStream fs = new FileStream("test.txt", FileMode.Open)) { using (StreamReader r = new StreamReader(fs, Encoding.UTF8)) { Console.WriteLine(Decimal.Parse(r.ReadLine())); Console.WriteLine(r.ReadLine()); Console.WriteLine(Char.Parse(r.ReadLine())); } } } }
File Stream
Construct StreamWriter from FileSream
using System; using System.IO; public class IOExample { static void Main() { FileStream fs; StreamWriter sw; try { fs = new FileStream("practice.txt", FileMode.Open ); sw = new StreamWriter(fs); // write a line to the file string newLine = "Not so different from you and me"; sw.WriteLine(newLine); // close the streams sw.Close(); fs.Close(); } catch (IOException ioe) { Console.WriteLine("IOException occurred: "+ioe.Message); } } }
Catch file read exception and retry
using System;
using System.IO;
class Retry {
static void Main() {
StreamReader sr;
int attempts = 0;
int maxAttempts = 3;
GetFile:
Console.Write(”
[Attempt #{0}] Specify file ” + “to open/read: “, attempts + 1);
string fileName = Console.ReadLine();
try {
sr = new StreamReader(fileName);
string s;
while (null != (s = sr.ReadLine())) {
Console.WriteLine(s);
}
sr.Close();
} catch (FileNotFoundException e) {
Console.WriteLine(e.Message);
if (++attempts < maxAttempts) {
Console.Write("Do you want to select another file: ");
string response = Console.ReadLine();
response = response.ToUpper();
if (response == "Y") goto GetFile;
} else {
Console.Write("You have exceeded the maximum retry limit ({0})", maxAttempts);
}
} catch (Exception e) {
Console.WriteLine(e.Message);
}
}
}
[/csharp]
StreamReader.ReadLine
using System; using System.IO; public class MainClass { public static void Main() { FileStream fs2 = File.Create("Bar.txt"); StreamWriter w2 = new StreamWriter(fs2); w2.Write("Goodbye Mars"); w2.Close(); fs2 = File.Open("Bar.txt", FileMode.Open, FileAccess.Read, FileShare.None); StreamReader r2 = new StreamReader(fs2); String t; while ((t = r2.ReadLine()) != null) { Console.WriteLine(t); } w2.Close(); fs2.Close(); } }
Read data in line by line
using System; using System.Collections.Generic; using System.Text; using System.IO; class Program { static void Main(string[] args) { string strLine; try { FileStream aFile = new FileStream("Log.txt", FileMode.Open); StreamReader sr = new StreamReader(aFile); strLine = sr.ReadLine(); while (strLine != null) { Console.WriteLine(strLine); strLine = sr.ReadLine(); } sr.Close(); } catch (IOException e) { Console.WriteLine("An IO exception has been thrown!"); Console.WriteLine(e.ToString()); return; } } }
Reading from a text file line by line
using System; using System.IO; class MainClass { public static void Main(string[] args) { try { FileStream fs = new FileStream("c:a.txt", FileMode.Open); StreamReader sr = new StreamReader(fs); string line = ""; int lineNo = 0; do { line = sr.ReadLine(); if (line != null) { Console.WriteLine("{0}: {1}", lineNo, line); lineNo++; } } while (line != null); } catch (Exception e) { Console.WriteLine("Exception in ShowFile: {0}", e); } } }
Use StreamWriter to create a text file
using System;
using System.IO;
public class MyStreamWriterReader {
static void Main(string[] args) {
StreamWriter writer = new StreamWriter(“reminders.txt”);
writer.WriteLine(“…”);
writer.WriteLine(“Don't forget these numbers:”);
for (int i = 0; i < 10; i++)
writer.Write(i + " ");
writer.Write(writer.NewLine);
writer.Close();
StreamReader sr = new StreamReader("reminders.txt");
string input = null;
while ((input = sr.ReadLine()) != null) {
Console.WriteLine(input);
}
}
}
[/csharp]