我试图弄清楚如何创建一个 .ov2 文件以将 POI 数据添加到 TomTom GPS 设备。数据的格式需要如下:
OV2 文件由 POI 记录组成。每条记录具有以下数据格式。
- 1 BYTE、char、POI 状态('0' 或 '2')
- 4 BYTES,长,表示 POI 记录的长度。
- 4 BYTES, long, 经度 * 100000
- 4 字节,长,纬度 * 100000
- x BYTES,字符串,POI 的标签,x =3D=3D 总长度 =96 (1 + 3 * 4)
- 终止空字节。
我发现以下 PHP 代码应该采用 .csv 文件,逐行浏览它,拆分每条记录,然后以适当的格式将其写入一个新文件。我希望有人能帮我把它翻译成 Java。我真的只需要我用'--->'箭头标记的行。我根本不了解 PHP,但除了这一行之外的所有内容都足够基本,我可以查看并翻译它,但我不知道 PHP 函数在那一行上做了什么。即使有人可以很好地解释它,那么也许我可以用 Java 弄清楚。如果您可以直接翻译,请这样做,但即使是解释也会有所帮助。谢谢。
<?php
$csv = file("File.csv");
$nbcsv = count($csv);
$file = "POI.ov2";
$fp = fopen($file, "w");
for ($i = 0; $i < $nbcsv; $i++) {
$table = split(",", chop($csv[$i]));
$lon = $table[0];
$lat = $table[1];
$des = $table[2];
--->$TT = chr(0x02).pack("V",strlen($des)+14).pack("V",round($lon*100000)).pack("V",round($lat*100000)).$des.chr(0x00);
@fwrite($fp, "$TT");
}
fclose($fp);
?>