-1
この関数は、テキストファイルから2つの座標と名前を返すようにしました。すべてが動作しますが、別の関数でこれらの座標を使用しようとすると、doubles
の代わりに2つのintegers
が表示されているようです。以下は、ゲッターを使用する場合の実際のコードと出力です。入力ファイルからC#filestream関数。二重座標のセットを返すべきです。
例:
delfshaven 51.9229006954, 4.43681055082
delfshaven 51.9229377766, 4.43726467466
コード:
public void ReadCoords(string path, string naam)
{
string line;
int endname;
int endfirstcoord;
int i;
string name;
string coord1;
string coord2;
double north, east;
var fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);
using (StreamReader reader = new StreamReader(fileStream, Encoding.ASCII))
{
while (!reader.EndOfStream)
{
line = reader.ReadLine();
if (line != "")
{
i = 0;
while (line[i] != ' ')
{
i++;
}
endname = i;
name = line.Substring(0, i);
i++;
if (naam == name)
{
while (line[i] != ',')
{
i++;
}
endfirstcoord = i;
coord1 = line.Substring(endname + 1, i - 1 - (endname));
coord2 = line.Substring(i + 2, line.Length - (i + 2));
north = double.Parse(coord1);
east = double.Parse(coord2);
deelgemeente.Add(new PointLatLng(north, east));
}
}
}
}
}
出力:事前に
{Lat=519226886783, Lng=443421830655}
{Lat=519227198819, Lng=443459846581}
{Lat=51922824973, Lng=443591425503}
{Lat=519228427681, Lng=443610117779}
{Lat=519229006954, Lng=443681055082}
感謝。
入力ファイルを表示してください。 –
生成された 'PointLatLng'-Objectsの文字列出力はどこで生成されていますか?あなたのコードを使ってオブジェクトを生成することは私の仕事です。 'ToString'をオーバーライドして、以下を返します:' return {{Lat = {0}、Lng = {1}}} "、Lat、Lng);出力も正しいです。 – Streamline