您的位置:首页 > 编程语言 > C#

[C#]StringWriter实现的一个功能

2007-11-13 09:25 309 查看
如何用一组双倍间距的句子创建一个连续的段落,然后将该段落重新转换为原来的文本:

using System;

using System.IO;

class StringRW

{

static void Main()

{

string textReaderText = "TextReader is the abstract base " +

"class of StreamReader and StringReader, which read " +

"characters from streams and strings, respectively.\n\n" +

"Create an instance of TextReader to open a text file " +

"for reading a specified range of characters, or to " +

"create a reader based on an existing stream.\n\n" +

"You can also use an instance of TextReader to read " +

"text from a custom backing store using the same " +

"APIs you would use for a string or a stream.\n\n";

Console.WriteLine("Original text:\n\n{0}", textReaderText);

string aLine, aParagraph = null;

StringReader strReader = new StringReader(textReaderText);

while(true)

{

aLine = strReader.ReadLine();

if(aLine != null)

{

aParagraph = aParagraph + aLine + " ";

}

else

{

aParagraph = aParagraph + "\n";

break;

}

}

Console.WriteLine("Modified text:\n\n{0}", aParagraph);

int intCharacter;

char convertedCharacter;

StringWriter strWriter = new StringWriter();

strReader = new StringReader(aParagraph);

while(true)

{

intCharacter = strReader.Read();

if(intCharacter == -1) break;

convertedCharacter = Convert.ToChar(intCharacter);

if(convertedCharacter == '.')

{

strWriter.Write(".\n\n");

strReader.Read();

strReader.Read();

}

else

{

strWriter.Write(convertedCharacter);

}

}

Console.WriteLine("\nOriginal text:\n\n{0}",

strWriter.ToString());

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐