我想從.dat文件讀取座標值。問題是我無法拆分字符 來識別座標。使用C#從.dat文件獲取數字
example http://img4.hostingpics.net/pics/3733791211.png
我想從.dat文件讀取座標值。問題是我無法拆分字符 來識別座標。使用C#從.dat文件獲取數字
example http://img4.hostingpics.net/pics/3733791211.png
第一版
在第一個版本,我只是用.Replace( 「 」「」)的方法由逗號
public Double[] GridValues(int fromline)
{
Double[] values = new Double[7];
for (int i = 1; i < 7; i++)
{
string input = ReadLine(fromline).Substring(8 * i, 8).Replace(".", ",");
values[i-1] = double.Parse(input);
}
return values;
}
第二個版本
更換點在第二章中,我將一個IFormatProvider傳遞給定義的Parse()方法。作爲
小數點分隔
public Double[] GridValues(int fromline)
{
Double[] values = new Double[7];
for (int i = 1; i < 7; i++)
{
string input = ReadLine(fromline).Substring(8 * i, 8);
values[i-1] = double.Parse(input,CultureInfo.InvariantCulture);
}
return values;
}
你的形象似乎是一個固定寬度的文件,所以一旦你知道每一列的偏移量,你可以用String.Substring(offset,length)
提取它們。
懇求你可以告訴我如何解析數字,如「0-.1234」或「.234」 – 2011-04-07 21:25:59
嘗試'十進制值= Decimal.Parse(字符串)' – 2011-04-07 21:38:49
它不適合我! – 2011-04-07 21:46:30
不應該硬解析用手該文件。試試! – atamanroman 2011-04-07 20:49:22