取消回车的一些问题

iread很好的电子书阅读器,美中不足对原文档中相邻行的回车没有做处理,做出来的电子书就参差不齐,就做了个很小的程序,专门取消统同一段落中各行之间的回车符号,以供iread再处理。碰到几个问题:
中文空格和英文空格是不同的:' ',' ',我是直接复制了VS2005调试程序中的字符值,其它的方法应该还有很多。
TextBox.Text设置文本窗口的字符有一个字符编码的参数,比如读取中文时就可以设为Encoding.Default,如果不设的话会显示乱码。
在多次处理长字符串时,StringBuild比string有效率,下面的代码处理”倚天屠龙记“时只要半分钟,如果是string的话要2-3分钟:

for (int i = 0; i < strTxtFileBuf.Length; i++)
{
if (strTxtFileBuf == '\r'&& strTxtFileBuf [i+1]=='\n' && i<strTxtFileBuf .Length -2)
{
if (!(strTxtFileBuf[i + 2] == ' ' || strTxtFileBuf[i + 2] == ' ' || strTxtFileBuf[i + 2] == '\r'))
{
strTxtFileBuf.Remove(i, 2);
}

}
}


而且stringbuild是可变的,比如做切除子串的remove方法就是直接在原实例上操作,而string则还要返回一次:
strTxtFileBuf=strTxtFileBuf.Remove(i, 2);
posted @ 2012-03-20 15:49  新旧老顽童  阅读(30)  评论(0编辑  收藏  举报