GoogleEarthで表示させてみるとこんな感じに。
もう少し細かく保存するようにした方がよさそうですね。
ただ、GoogleマップではUTF-8でファイルを作成しないと読み込むことができないようです。
wcstombs()でマルチバイトに変換してみましたが、シフトJISで出力されるだけで Googleマップでは受け付けてもらえませんでした。
ZeroMemory(szWBuf, sizeof(szWBuf)); ZeroMemory(szMbBuf, sizeof(szMbBuf)); wsprintf(szWBuf, KML_DATA, data[i].dblLongitude, data[i].dblLatitude); dwLen = wcstombs(NULL, szWBuf, 0); wcstombs(szMbBuf, szWBuf, dwLen); WriteFile(hKMLFile, szMbBuf, dwLen, NULL, NULL);
setlocale()を使えばいいのかなとも思ったのですが、うまくビルドできません。
WindowsMobileでは使えないのでしょうか?
理想的にはKMLファイルを作成してからモバイルGoogleマップで表示させたいのですが、モバイルGoogleマップでローカルのKMLファイルを読み込めるのかどうかもよくわかりませんでした。
まだまだ先が長そうです。
2 件のコメント:
こんにちは
WideCharToMultiByte() APIの第1引数をCP_UTF8でUTF8にできますよー
tmytさん おはようございます。
情報ありがとうございます。
実は WideCharToMultiByte()も試したはずだったのですが、今 単純なプログラムで試してみると ちゃんとUTF-8で出力されていました。
早速 WhereNowに組み込んでみます。
コメントを投稿