c#中如何去除字符串左边的0

寻技术 C#编程 2023年07月11日 132

c#去除字符串左边的0

string str="000101";
str=str.TrimStart('0');

输出结果:

str=“101”

c#字符串中含有\0的问题处理

问题描述

在byte转换为字符串的过程中,如果byte的值为0,则转换成字符串时变为’\0’字符,’\0’字符在C#中意味着字符串结束,如果后面再有字符,则读取字符串的程序也不能读取和显示出来。

如下图所示,构造一个字节数组,其中含有’\0’字符,在程序运行时通过跟踪可以看出:

(1)  字符串中含有’\0’字符及后续字符;

(2)  二进制数组中含有所有字符,并且’\0’字符的值为0;

(3)  在程序中查询字符串的值时只能显示’\0’字符前的字符。

 

同时在程序中测试的结果,也是只能显示’\0’字符前的字符。后面的字符被自动截断。下图所示。

程序中窗体测试结果。

通过前面的分析可以看出’\0’字符,其实就是ASCII中的0,下图为查询到的标准ASCII码。

处理措施

针对程序中出现\0字符后后续字符不能显示的问题,可以把\0变为相应的字符别的字符,如*等加以解决,代码如下:

string.Replace('\0','*')

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持寻技术。

关闭

用微信“扫一扫”