Csharp/C Sharp by API/System.IO/FileStream — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
| |
Текущая версия на 12:12, 26 мая 2010
Содержание
FileStream.Position
using System;
using System.IO;
public class BinaryFileTest {
private static void Main() {
FileStream fs = new FileStream("test.dat", FileMode.Create);
BinaryWriter w = new BinaryWriter(fs);
w.Write(1.2M);
w.Write("string");
w.Write("string 2");
w.Write("!");
w.Flush();
w.Close();
fs.Close();
fs = new FileStream("test.dat", FileMode.Open);
StreamReader sr = new StreamReader(fs);
Console.WriteLine(sr.ReadToEnd());
fs.Position = 0;
BinaryReader br = new BinaryReader(fs);
Console.WriteLine(br.ReadDecimal());
Console.WriteLine(br.ReadString());
Console.WriteLine(br.ReadString());
Console.WriteLine(br.ReadChar());
fs.Close();
}
}
FileStream.Read
using System;
using System.Windows.Forms;
using System.IO;
class MainClass
{
public static void Main()
{
FileStream inStream = File.OpenRead("C:\\test.txt");
FileStream outStream = File.OpenWrite("C:\\test.txt" + ".bak");
byte[] buf = new byte[4096];
int bytesRead;
while ((bytesRead = inStream.Read(buf, 0, 4096)) > 0)
outStream.Write(buf, 0, bytesRead);
outStream.Flush();
outStream.Close();
inStream.Close();
}
}
FileStream.ReadByte
using System;
using System.IO;
class ShowFile {
public static void Main(string[] args) {
int i;
FileStream fin;
try {
fin = new FileStream("test.cs", FileMode.Open);
} catch(FileNotFoundException exc) {
Console.WriteLine(exc.Message);
return;
} catch(IndexOutOfRangeException exc) {
Console.WriteLine(exc.Message + "\nUsage: ShowFile File");
return;
}
// read bytes until EOF is encountered
do {
try {
i = fin.ReadByte();
} catch(Exception exc) {
Console.WriteLine(exc.Message);
return;
}
if(i != -1) Console.Write((char) i);
} while(i != -1);
fin.Close();
}
}
FileStream.SetLength
using System;
using System.IO;
public class StrmWrtr
{
static public void Main (string [] args)
{
FileStream strm;
StreamWriter writer;
strm = new FileStream ("text.txt", FileMode.OpenOrCreate, FileAccess.Write);
writer = new StreamWriter (strm);
strm.SetLength (0);
while (true)
{
string str = Console.ReadLine ();
if (str.Length == 0)
break;
writer.WriteLine (str);
}
writer.Close ();
strm.Close ();
}
}
FileStream.Write
using System;
using System.Windows.Forms;
using System.IO;
class MainClass
{
public static void Main()
{
FileStream inStream = File.OpenRead("C:\\test.txt");
FileStream outStream = File.OpenWrite("C:\\test.txt" + ".bak");
byte[] buf = new byte[4096];
int bytesRead;
while ((bytesRead = inStream.Read(buf, 0, 4096)) > 0)
outStream.Write(buf, 0, bytesRead);
outStream.Flush();
outStream.Close();
inStream.Close();
}
}
FileStream.WriteByte
using System;
using System.IO;
class WriteToFile {
public static void Main(string[] args) {
FileStream fout;
try {
fout = new FileStream("test.txt", FileMode.Create);
} catch(IOException exc) {
Console.WriteLine(exc.Message + "\nError Opening Output File");
return;
}
// Write the alphabet to the file.
try {
for(char c = "A"; c <= "Z"; c++)
fout.WriteByte((byte) c);
} catch(IOException exc) {
Console.WriteLine(exc.Message + "File Error");
}
fout.Close();
}
}
new FileStream("soaptest.xml", FileMode.Create, FileAccess.ReadWrite)
using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Soap;
class SoapTest
{
public static void Main()
{
SerialEmployee emp1 = new SerialEmployee();
SerialEmployee emp2 = new SerialEmployee();
emp1.EmployeeID = 1;
emp1.LastName = "B";
emp1.FirstName = "K";
emp1.YearsService = 12;
emp1.Salary = 35000.50;
emp2.EmployeeID = 2;
emp2.LastName = "B";
emp2.FirstName = "J";
emp2.YearsService = 9;
emp2.Salary = 23700.30;
Stream str = new FileStream("soaptest.xml", FileMode.Create, FileAccess.ReadWrite);
IFormatter formatter = new SoapFormatter();
formatter.Serialize(str, emp1);
formatter.Serialize(str, emp2);
str.Close();
}
}
[Serializable]
public class SerialEmployee
{
public int EmployeeID;
public string LastName;
public string FirstName;
public int YearsService;
public double Salary;
public SerialEmployee()
{
EmployeeID = 0;
LastName = null;
FirstName = null;
YearsService = 0;
Salary = 0.0;
}
}
new FileStream(String fileName, FileMode.Open)
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.IO;
using System.IO.rupression;
using System.Net;
using System.Net.Mail;
using System.Net.Sockets;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
public class MainClass
{
public static void Main()
{
using (Stream from = new FileStream("c:\\test.txt", FileMode.Open))
using (Stream to = new FileStream("c:\\test2.txt", FileMode.OpenOrCreate))
{
int readCount;
byte[] buffer = new byte[1024];
while ((readCount = from.Read(buffer, 0, 1024)) != 0)
{
to.Write(buffer, 0, readCount);
}
}
}
}