рдЬрдм рдореИрдВ рдкреЗрдбрд▓рд┐рдВрдЧ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдЪреНрдЫрд╛ рдерд╛, рддрдм рднреА рдореБрдЭреЗ рд╡рдВрд╢рд╛рдиреБрдЧрдд рдкрджрд╛рдиреБрдХреНрд░рдо рдпрд╛рдж рдирд╣реАрдВ рдерд╛ рдФрд░ рдХреИрд╕реЗ .Net, StreamWriter, HttpWriter in .Net рдЬреИрд╕реА рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рддрдп рдХрд┐рдпрд╛ - рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рд╕рднреА (рдореВрд▓) рд▓рд┐рдЦрд╛, рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж рд▓рд┐рдЦреЗред
рдЬреЛ рд▓реЛрдЧ рд╡рд┐рд╖рдп рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреБрдЫ рднреА рдирдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рдпрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореБрдЦреНрдп рдХрдХреНрд╖рд╛рдПрдВ рд╣реИрдВ:
рдзрд╛рд░рд╛
- рд╕рд╛рд░
рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рдПрдХ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
MemoryStream
рдПрдХ рдереНрд░реЗрдб рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдмреИрдХрдЕрдк рд╕реНрдЯреЛрд░реЗрдЬ рдореЗрдореЛрд░реА рд╣реИред
рдФрд░ рдкрдврд╝рддрд╛ рдФрд░ рд▓рд┐рдЦрддрд╛ рд╣реИред
рдмрд╛рдЗрдЯ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХрд╛ рдРрд╕рд╛ рд╕рд╛рдзрди []ред
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
рдмрд╛рдЗрдЯ [] рдмрдлрд╝рд░ = рдирдИ рдмрд╛рдЗрдЯ [] {резрез,резреи,резрей,резрек,резрел,резрем,рез18,рез },рез реп, реиреж};
рдмрд╛рдЗрдЯ [] рдмрдлрд░ 2 = рдирдИ рдмрд╛рдЗрдЯ [] {21,22,23};
рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо рдореЗрдореНрд╕реНрдЯреНрд░реАрдо = рдирдИ рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо (рдмрдлрд░);
memStream.WriteByte (66);
memStream.WriteByte (77);
int adsfs = memStream.ReadByte ();
int adsfs2 = memStream.ReadByte ();
memStream.Position = 5;
memStream.Write (рдмрдлрд░ 2, 0, 2);
memStream.Seek (2, SeekOrigin.Current);
рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдкрдврд╝реЗ рдФрд░ рд▓рд┐рдЦреЗ рджреЛрдиреЛрдВ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рд╕реНрдерд┐рддрд┐ рдХреЛ рд▓рд┐рдЦреА / рдкрдврд╝реА рдЧрдИ рдмрд╛рдЗрдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред
FileStream
рд╕рднреА рд╕рдорд╛рди, рдмрд╕ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓рд┐рдЦреЗрдВ / рдкрдврд╝реЗрдВ
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
FileStream fileStream = рдирдпрд╛ FileStream ("file33.txt", FileMode.Open);
рдмрд╛рдЗрдЯ [] рдмрдлрд░ 2 = рдирдИ рдмрд╛рдЗрдЯ [] {71, 72, 73};
var b1 = fileStream.ReadByte ();
var b2 = fileStream.ReadByte ();
var b3 = fileStream.ReadByte ();
fileStream.WriteByte ((рдмрд╛рдЗрдЯ) b3);
fileStream.WriteByte ((рдмрд╛рдЗрдЯ) b3);
// рдФрд░ рд╕рднреА рдЧреБрдг
var b = fileStream.CanRead;
b = fileStream.CanWrite;
b = fileStream.CanSeek;
fileStream.Position = 106;
fileStream.Write (рдмрдлрд░ 2, 0, 3);
fileStream.Seek (1, SeekOrigin.End);
fileStream.WriteByte (76);
fileStream.WriteByte (76);
fileStream.WriteByte (76);
fileStream.WriteByte (76);
ReadByte () рдкрдврд╝рдиреЗ рдХреЗ рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдкрд░ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд┐рдЯрд░реНрди рджреЗрддрд╛ рд╣реИ (-1)ред
TextReader
- рд╕рд╛рд░
рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдПрдХ рдРрдб-рдСрди рдЬреЛ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП (рд╡рд░реНрдгреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ) рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдмрд╛рдЗрдЯреНрд╕ рдХреА рдирд╣реАрдВред
рдПрдХ рдкрд╛рдардХ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд▓рдЧрд╛рддрд╛рд░ рдЪрд░рд┐рддреНрд░ рд╕реЗрдЯ рдкрдврд╝рддрд╛ рд╣реИред
StreamReader
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
рдмрд╛рдЗрдЯ [] рдмрдлрд╝рд░ = рдирдИ рдмрд╛рдЗрдЯ [] {71,72,73,74,75,76,77,78,79,80, 80,80,80};
рдмрд╛рдЗрдЯ [] рдмрдлрд░ 2 = рдирдИ рдмрд╛рдЗрдЯ [] {81,82,83};
рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо рдореЗрдореНрд╕реНрдЯреНрд░реАрдо = рдирдИ рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо (рдмрдлрд░);
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ (StreamReader strReader = new StreamReader (memStream))
{
var sd = strReader.Peek ();
var sdd = strReader.Peek ();
var рдмреЛрдпрд╛ = strReader.Peek ();
var dasd = strReader.Read ();
string s = ((char) dasd) .ToString ();
var das2d = strReader.Read ();
var das3d = strReader.Read ();
strReader.BaseStream.Position = 8;
var vsd = strReader.ReadToEnd ();
}
рд╕рдм рдХреБрдЫ рдЕрдм рд╕рд░рд▓ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рд╕реНрдерд┐рддрд┐ рдХреВрдж рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛ рдмрдлрд╝рд░ рд╣реЛрддрд╛ рд╣реИред
StringReader
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
string s = "SDAFASDF AF dfsdfsd fas";
StringReader stringReader = рдирдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧрд░ (рдУрдВ);
var sdf = stringReader.Read ();
var sddf = stringReader.Read ();
var sddasdf = stringReader.Read ();
var sdsssf = stringReader.Read ();
var sdfaa = stringReader.Read ();
var sdfg = stringReader.ReadLine ();
TextWriter
- рд╕рд╛рд░
рдПрдХ рд░рд┐рдХреЙрд░реНрдбрд░ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдиреБрдХреНрд░рдорд┐рдХ рд╡рд░реНрдг рд╕реЗрдЯ рд░рд┐рдХреЙрд░реНрдб рдХрд░рддрд╛ рд╣реИред
StreamWriter
рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдРрдб-рдЗрди рд╕реНрдЯреНрд░реАрдо рдХрд░реЗрдВред рд╕рд╛рд░ TextWriter рд╕реЗ рд╡реНрдпреБрддреНрдкрдиреНрди
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
FileStream fileStream = рдирдпрд╛ FileStream ("file33.txt", FileMode.Open);
fileStream.Seek (1, SeekOrigin.End);
StreamWriter strWriter = new StreamWriter (fileStream);
strWriter.Write ("рдЙрджрд╛рд╕");
strWriter.WriteLine ("рдЙрджрд╛рд╕");
strWriter.Write ("рдЙрджрд╛рд╕");
strWriter.Close ();
рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рд╕реНрдЯреНрд░реАрдо рдХреА рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рдмрджрд▓рддреА рд╣реИред
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
рдмрд╛рдЗрдЯ [] рдмрдлрд╝рд░ = рдирдИ рдмрд╛рдЗрдЯ [] {=рез, =рез,,,,,,, =,, =рел, =], = 78, = реп, =реж, =реж, =реж, ;реж};
рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо рдореЗрдореНрд╕реНрдЯреНрд░реАрдо = рдирдИ рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо (рдмрдлрд░);
StreamWriter strWriter = new StreamWriter (memStream);
strWriter.Write ("рдЙрджрд╛рд╕");
// strWriter.Write ("sasfagfsdghs h dfhdh d hd ddf d");
strWriter.Close ();
XmlReader
рдПрдХ рдФрд░ рдРрдбред рдЕрдм TextReader рдкрд░ред рдЗрд╕реЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдПрдХ рд╕реНрдЯреНрд░реАрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдФрд░ рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рд░реАрдбрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
FileStream fileStream = рдирдпрд╛ FileStream ("file1.txt", FileMode.Open);
XmlReader рд░реАрдбрд░ = XmlReader.Create (fileStream);
StringBuilder рдЙрддреНрдкрд╛рджрди = рдирдпрд╛ StringBuilder ();
XmlWriter рд▓реЗрдЦрдХ = XmlWriter.Create (рдЖрдЙрдЯрдкреБрдЯ);
// рдлрд╛рдЗрд▓ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред
рдЬрдмрдХрд┐ (рд░реАрдбрд░ред рд░реАрдб ())
{
рд╕реНрд╡рд┐рдЪ (рд░реАрдбрд░ред рдиреЛрдб рдЯрд╛рдЗрдк)
{
рдорд╛рдорд▓рд╛ XmlNodeType.Element:
рд▓реЗрдЦрдХ .riteStartElement (рд░реАрдбрд░.рдирд╛рдо);
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ XmlNodeType.Text:
рд▓реЗрдЦрдХред рдХреНрд░рд┐рдЯрд╕реНрдЯреНрд░рд┐рдВрдЧ (рдкрд╛рдардХ.рд╡рд╛рдпреБ);
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ XmlNodeType.XmlDeclaration:
рдорд╛рдорд▓рд╛ XmlNodeType.ProcessingInstruction:
рд▓реЗрдЦрдХ .riteProcessingInstruction (рдкрд╛рдардХред рдирд╛рдо, рдкрд╛рдардХред рд╡рд╛рд▓реНрдпреВ);
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ XmlNodeType.Comment:
рд▓реЗрдЦрдХред рд╕рд╛рд╣рд┐рддреНрдпред рдкрд╛рдардХ (рдкрд╛рдардХред рдкреНрд░рд╕реНрддрд╛рд╡);
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ XmlNodeType.EndElement:
рд▓реЗрдЦрдХ .riteFullEndElement ();
рддреЛрдбрд╝;
}
}
рд▓реЗрдЦрдХред рдХреНрд▓реЛрдЬрд╝ ();
рдмрд╣реБрдд рдЕрдЬреАрдм (рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рддреЗрдЬрд╝) рдПрдХреНрд╕рдПрдордПрд▓ рдкрдврд╝рддрд╛ рд╣реИред рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ Xdocument рдпрд╛ XMLDocument рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдпреЗ рд╡рд░реНрдЧ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдРрдб-рдСрди рд╣реИрдВред
XmlWriter
рдПрдХ рдкрд╛рдардХ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬреЛ XML рдбреЗрдЯрд╛ рдХреЛ рддреЗрдЬ, рдЧреИрд░-рдХреИрд╢, рдлреЙрд░рд╡рд░реНрдб-рдХреЗрд╡рд▓ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде TextWriter (StreamWriter) рдХреЗ рд▓рд┐рдП рдПрдХ рдРрдб-рдСрди:
рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛:
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ (XmlWriter рд▓реЗрдЦрдХ = XmlWriter.Create (xmlFile, рд╕реЗрдЯрд┐рдВрдЧреНрд╕))
{
рд▓реЗрдЦрдХ .riteStartDocument (рдЭреВрдард╛);
author.WriteComment ("рдпрд╣ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рд╣реИред");
рд▓реЗрдЦрдХред рдХреНрд░рд╛рдЗрд╕реНрдЯрд╕реНрдЯрд╛рд░реНрдЯрдореЗрдВрдЯ ("рдкреБрд╕реНрддрдХреЗрдВ");
рд▓реЗрдЦрдХред рдХреНрд░рд╛рдЗрд╕реНрдЯрд╕реНрдЯрд╛рд░реНрдЯрдореЗрдВрдЯ ("рдкреБрд╕реНрддрдХ");
рд▓реЗрдЦрдХ .riteElementString ("рдЖрдИрдбреА", "1");
рд▓реЗрдЦрдХред WiteElementString ("рдирд╛рдо", "рдРрдкреНрдкрд▓ рдЯреНрд░реЗрдирд┐рдВрдЧ рд╕реАрд░реАрдЬрд╝: рдЧреИрд░рд╛рдЬрдмреИрдВрдб 09");
author.WriteElementString ("рд▓реЗрдЦрдХ", "рдореИрд░реА рдкреНрд▓рдорд░");
рд▓реЗрдЦрдХред WiteElementString ("рдореВрд▓реНрдп", "$ 39.99");
рд▓реЗрдЦрдХред
рд▓реЗрдЦрдХред
рд▓реЗрдЦрдХред рдлрд╝реНрд▓рд╢ ();
}
}