База ответов ИНТУИТ

Практикум прикладного программирования на C# в среде VS.NET 2008

<<- Назад к вопросам

Рассмотрим код:
private void button1_Click(object sender, System.EventArgs e){ StringBuilder sbText= new StringBuilder("Дом, который построит Джек"); StringBuilder sbText1= new StringBuilder("Пшеница, которая в темном чулане хранилась"); StringBuilder sbText2= new StringBuilder("Кот, который пугал синицу");  StringWriter stringwriter = new StringWriter();       sbText=sbText.Replace("построит","построил"); sbText1=sbText1.Replace("хранилась","хранится"); sbText2=sbText2.Replace("пугал","пугает"); stringwriter.Write(sbText); stringwriter.Write(stringwriter.NewLine); stringwriter.Write(sbText1);			 stringwriter.GetStringBuilder().Insert(sbText.Length+1,sbText2); string path = @"C:\a.txt";using(TextWriter streamWriter = new StreamWriter(path,true,System.Text.Encoding.Default)) {  streamWriter.Write(stringwriter); } stringwriter.Close(); using(TextReader streamreader = new StreamReader(path,System.Text.Encoding.Default)) {  StringReader stringreader = new StringReader(streamreader.ReadToEnd());  textBox1.Text+=stringreader.ReadLine()+"\r\n";  textBox1.Text+=stringreader.ReadLine()+"\r\n";  sbText=new StringBuilder(stringreader.ReadLine());  sbText=sbText.Replace("Кот", "Пес",0,5);  textBox1.Text+=sbText;  stringreader.Close(); }}
Результатом выполнения будет:

(Отметьте один правильный вариант ответа.)

Варианты ответа
Текст в файле:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяПес, который пугает синицу
Текст в контроле TextBox:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяКот, который пугает синицу
Текст в файле:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяКот, который пугает синицу
Текст в контроле TextBox:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяКот, который пугает синицу
Текст в файле:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяКот, который пугает синицу
Текст в контроле TextBox:
Дом, который построил ДжекПшеница, которая в темном чулане хранитсяПес, который пугает синицу
(Верный ответ)
Похожие вопросы
При выполнении конструктора класса public StringReader(string str): string sText="съешь"+Environment.NewLine+"этих"+Environment.NewLine+ "сладких"+Environment.NewLine+"булочек"+Environment.NewLine; string strLine= null;StringReader stringreader = new StringReader(sText);while(true){ strLine = stringreader.ReadLine(); if(strLine != null) { textBox1.Text+=strLine+"\r\n"; } else { break; }}получим результат:
Фрагмента кода:
using System;using System.Text;using System.Net;using System.Net.Sockets;class SocketServer{public static void Main(){StreamWriter streamWriter;StreamReader streamReader;NetworkStream networkStream;TcpListener tcpListener = new TcpListener(5555);tcpListener.Start();Console.WriteLine("The Server has started on port 5555");Socket serverSocket = tcpListener.AcceptSocket();try{if (serverSocket.Connected){while (true){Console.WriteLine("Client connected");networkStream = new NetworkStream(serverSocket);streamWriter = new StreamWriter(networkStream);streamReader = new StreamReader(networkStream);Console.WriteLine(streamReader.ReadLine());}}if (serverSocket.Connected)serverSocket.Close();Console.Read();}catch (SocketException ex){Console.WriteLine(ex);}}}    
демонстрирует, что:
Рассмотрим следующий фрагмент кода:private void button1_Click(object sender, System.EventArgs e){ string path = @"C:\a.txt";using(FileStream filestream=File.Open(path, FileMode.OpenOrCreate)) { BinaryWriter binarywriter = new BinaryWriter(filestream); decimal dNum=20.3m; binarywriter.Write(dNum); dNum=723.05m; binarywriter.Write(dNum); dNum=3000.105m; binarywriter.Write(dNum); }using(FileStream filestream=File.Open(path, FileMode.Open)) { BinaryReader binaryreader = new BinaryReader(filestream); decimal dNum; filestream.Seek(16,SeekOrigin.Begin); textBox1.Text+=binaryreader.ReadDecimal().ToString()+" "; filestream.Seek(32,SeekOrigin.Begin); textBox1.Text+=binaryreader.ReadDecimal().ToString()+" "; filestream.Seek(0,SeekOrigin.Begin); textBox1.Text+=binaryreader.ReadDecimal().ToString()+" "; }}Результат в TextBox:
Внесем в файл C:\a.txt числа 0123456789, выполним следующий код:
private void button1_Click(object sender, System.EventArgs e){//Файл создан заранее, его объем должен быть достаточно большим string path = "C:\a.txt"; using(FileStream        fileStream = new FileStream(path, FileMode.Open)) {  fileStream.Seek(1, SeekOrigin.Begin);    for (int i=0;i<fileStream.Length;i++)      textBox1.Text=fileStream.ReadByte()+" ";  }
Результат в TextBox:
Класс StringWriter используется для записи строки, которая хранится:
Фрагмент кода:
using System;  using System.IO;  using System.IO.Compression; namespace Recipe05_23  {  class Recipe05_23  {  static void Main(string[] args)  {   GZipStream zipout = new GZipStream(  File.OpenWrite("compressed_data.gzip"),  CompressionMode.Compress);  StreamWriter writer = new StreamWriter(zipout);  writer.WriteLine("the quick brown fox");   writer.Close();  GZipStream zipin = new GZipStream(  File.OpenRead("compressed_data.gzip"),  CompressionMode.Decompress);  StreamReader reader = new StreamReader(zipin);  a line from the stream and print it out.  Console.WriteLine(reader.ReadLine());  Console.WriteLine(Environment.NewLine);  Console.WriteLine("Main method complete. Press Enter."); Console.ReadLine(); } } }
демонстрирует пример:
Внесем в файл C:\a.txt числа 0123456789, выполним следующий код:
private void button1_Click(object sender, System.EventArgs e){//Файл создан заранее его объем должен быть достаточно большим string path = "C:\a.txt";FileInfo fileinfo=new FileInfo(path);  using(FileStream       fileStream = fileinfo.OpenWrite()) {  fileStream.Seek(0, SeekOrigin.Begin);          byte[] bArray=new byte[10];  Random numrandom = new Random();  for(int i=0; i <bArray.Length; i++)  {   //Записываем случайные числа в массив   bArray[i]=(byte)numrandom.Next(48,57);   fileStream.WriteByte(bArray[i]);   textBox1.Text+=bArray[i];  }				 }}
полный результат выполнения кода:
Внесем в файл C:\a.txt числа 0123456789, выполним следующий код:
private void button1_Click(object sender, System.EventArgs e){   //Файл создан заранее его объем должен быть достаточно большимstring path = "C:\a.txt"; FileInfo fileinfo=new FileInfo(path);  using(FileStream   fileStream = fileinfo.OpenRead()) {  fileStream.Seek(0, SeekOrigin.Begin);  byte[] bArray=new byte[10];    int iBytes=fileStream.Read(bArray,0,10);    if(iBytes == 10)  {   for(int i=0; i < iBytes; i++)   textBox1.Text+= bArray[i];  }}						
Результат:
Фрагмент кода:
Imports System Imports System.IO Imports System.Security.Cryptography Module VBDemo Sub Main()     Dim Bytes() As Byte = {65, 66, 67, 68, 69, 70, 71, 72, 73, 74}     Dim EncBytes() As Byte = New Byte(15) {}     Dim DecBytes() As Byte = New Byte(10) {}     Dim FileName As String = "c:\temp\text.enc"     Dim EncFile As New FileStream(FileName, FileMode.Create, _         FileAccess.Write)     Dim DES As New DESCryptoServiceProvider()     Dim DESEncrypt As ICryptoTransform = DES.CreateEncryptor()     Dim CryptoStreamEnc As New CryptoStream(EncFile, DESEncrypt, _         CryptoStreamMode.Write)     Console.WriteLine("Original Data")     ToHexArray(Bytes)     CryptoStreamEnc.Write(Bytes, 0, Bytes.Length)     CryptoStreamEnc.Close()     EncFile.Close()     EncFile = New FileStream(FileName, FileMode.Open, FileAccess.Read)     EncFile.Read(EncBytes, 0, EncFile.Length)     EncFile.Close()     Console.WriteLine("Encrypted Data")     ToHexArray(EncBytes)     Console.WriteLine()     Dim DecFile As New FileStream(FileName, FileMode.Open, _         FileAccess.Read)     Dim DESDecrypt As ICryptoTransform = DES.CreateDecryptor()     Dim CryptoStreamDec As New CryptoStream(DecFile, DESDecrypt, _         CryptoStreamMode.Read)     Dim Reader As New BinaryReader(CryptoStreamDec)     Console.WriteLine("Decrypted Data")     DecBytes = Reader.ReadBytes(10)     ToHexArray(DecBytes) End Sub Sub ToHexArray(ByVal A As Byte())     Dim I As Integer     For I = 0 To A.GetUpperBound(0)         Console.Write("0x{0:x2} ", A(I))         If I = 7 Then             Console.WriteLine()         End If     Next End Sub End Module
показано:
Следующий пример:
Imports SystemImports System.IOModule VBDemoSub Main()    Dim FileName As String = _         “C:\Program Files\Microsoft.NET\FrameworkSDK\include\corsym.h”    Dim Reader As TextReader    Dim I As Int32    Reader = New StreamReader(FileName)    While Reader.Peek() > -1        Console.WriteLine(Reader.ReadLine)        I += 1    End While    Console.WriteLine(“Read {0:G} lines”, I)    Reader.Close()End SubEnd Module
показано: