读书人

读取文件特殊字符处理。解决方案

发布时间: 2012-06-07 15:05:14 作者: rapoo

读取文件,特殊字符处理。。
txt文件格式:

HTML code
 mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEID U$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$  


应该读出来是3条数据 按照$$$$ 去分隔行
mdbm|$|usercode 之间按|$|分隔字段数据

[解决办法]
那就先按 $$$$ Split。然后对每一个项再按|$| 分隔
[解决办法]
你这个格式规则很明确,用 Split 就可以

http://topic.csdn.net/u/20111110/09/db95591d-5465-4830-ac8d-f264c2c76db1.html
[解决办法]
C# code
string origin = "mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEID U$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$";            origin=origin.Replace("$$$$", "#");            string[] array = origin.TrimEnd('#').Split('#');
[解决办法]
C# code
public void Page_Load(object sender, EventArgs e)    {        string str = "mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEID U$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$mdbm|$|usercode|$|strguid|$|txm|$|hjzcs|$|spcs|$|pmsl|$|pmkc|$|saleprice|$|memo|$|GpsAdrdss|$|GPSJINDU|$|GPSWEIDU$$$$";        str = str.TrimEnd(new char[] { '$', '$', '$', '$' });        string[] rows = str.Replace("$$$$", "").Split('');        for (int i = 0; i < rows.Length; i++)        {            string[] cols = rows[i].Replace("|$|", "").Split('');            for (int j = 0; j < cols.Length; j++)            {                Response.Write(string.Format("数据{0}为:第{1}行,第{2}列<br/>", cols[j], i + 1, j + 1));            }        }    }
[解决办法]
主要是转化$ 要用其他的代替下

try
C# code
  string str = "mdbm|$|usercode|$|strguid$$$$mdbm|$|usercode|$|strguid$$$$";  str = str.Replace("$$$$", "@").Replace("|$|", "#"); 

读书人网 >asp.net

热点推荐