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


    如何用一组双倍间距的句子创建一个连续的段落,然后将该段落重新转换为原来的文本:

    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());
        }
    }

  • 相关阅读:
    hwclock设置时间的调用过程是怎样的?
    git如何获取获取子模块的代码?
    hwclock和date源码分析
    linux内核是如何支持深度睡眠(deep sleep)方式的?
    mac下如何安装python3?
    linux内核中的__cpu_suspend是在哪里实现的呀?
    linux下安装oracle需要的配置
    linux实操常用命令总结
    linux下vi命令大全
    PHP100精华:很靠谱linux常用命令
  • 原文地址:https://www.cnblogs.com/goody9807/p/953715.html
Copyright © 2020-2023  润新知