C#,标签忽略给定文本的部分

C#, label ignores parts of the given text

我需要在我的标签中添加类似“x rub | y%”的内容,但标签会忽略 x 之后的其余文本。 当标签获得“0”值时,它按我想要的方式工作,即“0$。| 0%”,但只要值不为 0,它只显示“read_cat”的值(“2000 ”)。提前谢谢你。

System.IO.StreamReader reading2 = File.OpenText("categories\clothes.txt");
read_cat1 = Convert.ToString(File.ReadAllText("categories\clothes.txt")); 
clothes_percentage.Text = Convert.ToString(read_cat1) +"$ | "+ 
Convert.ToString(Math.Round(Convert.ToDouble(read_cat1) * 100 / salary, 2))+"%";
reading2.Close();

我猜你的文件在实际值之后包含一个换行符。使用 Trim() 方法从您从文件中读取的字符串中删除换行符和其他空格。

string read_cat1 = File.ReadAllText("categories\clothes.txt"); 
read_cat1 = read_cat1.Trim();
clothes_percentage.Text = read_cat1 + "$ | " + 
    Math.Round(Convert.ToDouble(read_cat1) * 100 / salary, 2) +"%";