Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 处理换行符_C#_String_User Interface_Textbox - Fatal编程技术网

C# 处理换行符

C# 处理换行符,c#,string,user-interface,textbox,C#,String,User Interface,Textbox,我正在用C语言创建一个程序,它遍历一个字符串并计算其中字符的频率 基本上我有2节课 class Node { private char character; private float frequency; public void increment();//increments frequency } class FreqTbl { private List<Node> nodes;

我正在用C语言创建一个程序,它遍历一个字符串并计算其中字符的频率

基本上我有2节课

    class Node
    {
       private char character;
       private float frequency;
       public void increment();//increments frequency
    }

    class FreqTbl
    {
        private List<Node> nodes;
        public void buildTable(char Symbol)
        {
            bool found = false;

       
            foreach (var node in nodes.Where(n => n.getSymbol() == Symbol))
            {
                node.increment();

                found = true;
            }

            if(found == false)
            {
                newNode(Symbol);
            }
        }
    }
类节点
{
私有字符;
私人浮动频率;
public void increment();//增加频率
}
类频率
{
私有列表节点;
公共void构建表(字符符号)
{
bool-found=false;
foreach(nodes.Where中的var节点(n=>n.getSymbol()==Symbol))
{
node.increment();
发现=真;
}
if(found==false)
{
新节点(符号);
}
}
}
通过一个文本框GUI,程序将一个字符传递到FreqTbl.buildTable中,后者通过节点字段进行搜索。在处理所有其他字符时没有问题,换行符在输出中出现两次

说明文本框是否有输入

链表

红黑树

结果输出将是

l:3

i:2

n:1

k:2

e:4

d:2

:3

s:1

t:2

\n

:1

\n

:1

r:2

b:1

a:1

c:1


\n表示换行符。是否要解决此问题,以便在输出中仅显示1行中断?

在将每个字符传递到FreqTbl.buildTable之前,您可以选择处理输入:

string strInput = textBox1.Text.TrimEnd('\r', '\n' );


似乎有两个节点都表示\n。消灭其中一个。或者(不太可能)您的输出例程中可能有一个bug…为什么不修剪输入字符串的结尾,以确保不会出现尾随
\n
此示例中缺少很多代码:
节点.increment()
未实现,并且
frektbl.nodes
无法用于输出,没有定义
newNode
getSymbol
方法,这只是开始。。。尽管如此,我还是要看看我是否可以用最少的编辑来复制。。。
string strInput = textBox1.Text.TrimEnd(Environment.NewLine.ToCharArray());