DATファイルをシェープファイルに変換する方法

833 views
Skip to first unread message

NN

unread,
Jul 10, 2020, 1:43:39 AM7/10/20
to QGIS初心者質問グループ
DATファイル(.dat)から、QGISに取り込めるシェープファイルに変換する方法を探しています。
と同じことをしたいと考えているのですが、
13ページにある「独自ファイルをESRIシェープファイル形式に変換」
のやり方がわからず困っています。フリーソフト等では変換できないのでしょうか。
独自ファイルというのがDATファイルです。
回答よろしくお願いします。

fine

unread,
Jul 10, 2020, 4:10:25 AM7/10/20
to QGIS初心者質問グループ
はじめまして。
独自ファイルをシェープに変換したいとのことですが、
QGISにD&Dしても読み込めないようなデータなのでしょうか?
そのdatファイルが何のソフトで保存したかはわかりませんでしょうか?

2020年7月10日金曜日 14:43:39 UTC+9 NN:

NN

unread,
Jul 10, 2020, 5:35:38 AM7/10/20
to QGIS初心者質問グループ
ご返信ありがとうございます。
DATファイルの状態ではD&Dした際、無効なデータソースであると表示されます。
利用ソフトについては確認が取れていないのですが、このサイトにあるようにCADではないかと思われます。https://www.gesui.metro.tokyo.lg.jp/contractor/pdf/3_kansoka_2020.05.pdf
曖昧な回答で、情報が少なくすみません。

福岡

unread,
Jul 10, 2020, 6:18:45 AM7/10/20
to QGIS初心者質問グループ
NN 様

こんにちは

CAD使いではないので全く自信はありませんが、提示していただいた資料を読むと、データの仕様がSXFになっているようです。
それであれば、拡張子はsfcかp21になるのではないかと思います。

そして、何らかの事情で拡張子がdatに書き換えられことはあるみたいです。

「拡張子datのファイルはどうやって作成される?」へのアンサー

拡張子を書き換えて手持ちのCADで読み込めるかを試してみてはいかがでしょうか?
可能性は低いかもしれませんが、試す価値はあるかもしれません。

もしCADをお持ちでなければ「公共測量ビューア・コンバータ」でお試しになられたら良いかと思います。
「公共測量ビューア・コンバータ」はSXF形式のファイルをShapeファイルへ変換もできます。

公共測量ビューア・コンバータ

最初に書きましたとおり全く自信がありませんので、うまくいったらラッキー程度の情報とお考えください。
Message has been deleted

ありた

unread,
Jul 10, 2020, 8:16:45 AM7/10/20
to QGIS初心者質問グループ
こんにちは

テキストエディタやバイナリエディタで開いてみてください。

テキストエディタで開いてみて、表示できる形式(印字可能文字のみ使用)
  P21 / SFC や DXF などの CAD ファイル
  GML などの XML 系
  ASCII gridded XYZ 形式などの点情報の羅列

バイナリデータだけどテキストエディタでわかること(マジックナンバーが印字可能文字)
  先頭が PK の場合、 ZIP 書庫ファイル( docx / xlsx / qgz 等含む)
  先頭が AC1 の場合、 DWG ファイル( AutoCAD )
  先頭が %PDF の場合、 PDF ファイル

バイナリエディタで開いてみてわかること
  先頭が \x1f\x8b の場合、 gzip 書庫ファイル
  先頭が \x89PNG の場合、 PNG ファイル


意外と、数値をベタ出力したものを dat ファイルとして保存することもあります。
(解析ものなど)
Message has been deleted

ありた

unread,
Jul 10, 2020, 9:37:59 PM7/10/20
to QGIS初心者質問グループ
こんにちは

差し支えなければ、冒頭・末尾の10行程度提示していただければ助かります。
場合によっては若干数字を変えてもらっても構いません。ただ数値のオーダーなどは
大きく変えないでください。(たとえば経度として書かれた数値に1000が出ると変)
また空行など、イレギュラーな箇所があれば教えてください。

少し形式を変えるだけで、 CSV 等として読み込ませることができるかもしれませんし、
変換するにしても仕様を類推する必要があります。

NN

unread,
Jul 10, 2020, 10:17:28 PM7/10/20
to QGIS初心者質問グループ
ありがとうございます。
先程コメントを消してしまいました。すみません。

こちらでいいのかわかりませんが、テキストエディタで表示されたものです。
奇数行と偶数行が同じ行です。少し数字を変えています。
よろしくお願いいたします。

517151171512020161542013  00012303-1066474-3220978-1066154-3220974 0.57423 0.81912  210-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522013171522014  00010204-1072802-3248198-1072809-3248388 0.95349-0.18632   30-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522009171522019  00012303-1066234-3246142-1066327-3246276-0.83260 0.55388 1730-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522006171522023  00020203-1066209-3244434-1066086-3244251-0.12843 0.57461  680-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522003171522004  00012303-1067579-3241404-1067785-3241376 0.08370 0.99649  790-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522003171522004  00050203-1067937-3240077-1067618-3240119-0.03570-0.99649 2100-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522003171522004  00012303-1067379-3239464-1067528-3239445-0.08356-0.99649 2770-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091

517151171522004171512013  00040203-1067693-3237977-1067378-3238007-0.10178-0.34581 1040-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522004171512013  00012303-1067014-3236445-1067232-3236433 0.99941-0.03421 2740-999-999    0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       000000000000000000001040000000000000000000000000000000000010000000000000000000000000091
517151171522047171522048  00020103-1052201-3242425-1052009-3242460 0.24190 0.97030 1010 115  15L   0 0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       010000210000201002101040000000000000000000000000000000000010000000000000000000000000091


ありた

unread,
Jul 10, 2020, 11:18:58 PM7/10/20
to QGIS初心者質問グループ
こんにちは

ありがとうございます。

パッと見て感じるのは、 FORTRAN とかの出力で見かける桁固定の形式なのかな。
(たとえば35桁目から42桁目までは整数8桁分の領域で、8桁すべて使う場合は
 空白等の区切りは生じない。逆に4桁しか使わないと空白が4文字生じる)

ということと、座標値っぽい部分が精々35桁目から66桁目までの4つの値程度で
それでも単位が度分秒でも、秒でも、メートルでも、ミリメートルでもなさそうな
感じで、あるとしたら解析対象区域の任意座標とかかな。といった印象です。

そもそもこのデータが GIS データ(位置情報を有する)と確信されたのはなぜですか?

Yoichi Kayama

unread,
Jul 10, 2020, 11:50:06 PM7/10/20
to QGIS初心者質問グループ
そのハッカソンの時のデータ準備とかをした当該です。

この時の元データは東京都の下水道台帳システムの入出力用データです。
たまたま昭和の時代にVAX11で運用していたことにこのシステムの開発にかかわっていたのですが、
基本的なデータ構造は当時と変わっていなくて、言及あるように当時はFORTRANで開発していた
システムです。

ですから以後出てきたような汎用的な形式ではないので世の中のなんらかのコンバータでは
読み書きできるようなものではないです。

仕様書にあるカラムの構造でファイルを読み書きするプログラムを用意する必要があります。
座標は多分平面直角座標系の座標であるか図面内の相対座標(図面番号から図面原点の座標がわかる)の
どちらかで出力されたと記憶しております。

NN

unread,
Jul 11, 2020, 2:38:37 AM7/11/20
to QGIS初心者質問グループ
ご返信ありがとうございます。
システムの開発に関わったいた方からご回答いただき、ありがたく思います。

プログラムの用意となりますと、素人の私には中々難しいので、今回はあきらめようと思います。

ご回答いただいた皆様ありがとうございました。

ありた

unread,
Jul 11, 2020, 2:47:44 AM7/11/20
to QGIS初心者質問グループ
こんにちは

このデータが東京都の下水道台帳のデータであるならば、センチメートル単位の
平面直角座標系で記載された頂点2つの辺ラインデータかもしれませんね。

管種管径などの付随する属性情報はコード化されていると思いますので、仕様書を
読まないとわかりませんが、単純に線として取り出すならば、35桁目からの8桁4値の
整数を取り出して、メートルになおし、以下のような WKT 形式とした CSV に変換するのが
楽だと思います。頑張ればテキストエディタの機能とエクセルでも可能かと思います。
(もちろん詳細な仕様が不明なため憶測になりますが)
LINESTRING(-10676.93 -32379.77, -10673.78 -32380.07)
Reply all
Reply to author
Forward
0 new messages