0

新しい Ruby on Rails アプリケーションで、ユーザーの国コードを見つけたいと考えています。
だから私は MaxMind GeoIp を使用しています。gunzip の後に gzip ファイルをダウンロードすると、GeoIP.dat ファイルが生成され、ここで立ち往生します。誰でも助けることができますか。
それらがそれを開くためのプログラムまたはそれを使用するための何らかの手順である場合。または、誰かが私に別の方法を提案できる場合。

4

2 に答える 2

2

@Kyle が指摘したように、バイナリ DAT ファイルの代わりに「人間が読める」CSV ファイルをダウンロードできます。MaxMind の「GeoLite」のダウンロードはこちら.

CSV ファイル形式については、こちらで説明しています

ただし、注意してください(上記のリンクから):

地理位置情報データベースはサイズが大きいため、速度とディスク容量が高度に最適化されているため、API のいずれかでバイナリ形式を使用することをお勧めします。一方、データを SQL データベースにインポートする必要がある場合は、CSV 形式をお勧めします。

API はここにリストされています。リストされている Javascript API はありませんが、Ruby にはいくつかのオプションがあります。

したがって、質問に直接答えるには、スプレッドシート ドキュメントのように dat ファイルを直接「開く」ことはしません。代わりに、API を使用して dat ファイルを読み取り、設計したタスクやクエリを実行する独自のプログラムを作成します。開始方法の詳細については、API ドキュメントを確認してください。

于 2012-09-06T05:37:51.097 に答える
1

.datは単なるファイル拡張子です。内容は何でも構いません。文章。バイナリデータなど...

ファイルを開く方法を確実に教えてくれる人はいません。

コマンドラインからファイルの内容を表示しようとします:

less file_name.dat

ファイルを開いて、次のように ruby​​ で 1 行ずつ読むことができます。

IO.readlines('file_name.dat').each do |line|
  # do something with the line
end

編集:あなたが参照しているファイルを見つけたと思います。ここcsvにアクセスして、バージョンをダウンロードしてみませんか? .datバージョンはプレーンテキストではありません。

于 2012-09-06T05:11:07.253 に答える