青木ITプランニング
PHP、Smarty、ケータイサイトについて発信中。書籍 「Smarty動的webサイト構築入門」(技術評論社) 好評発売中
-
ken_all.csvについて
日本郵便の都道府県データ(KEN_ALL.CSV)のデータ構造について説明します。
カンマ区切りのCSV形式のファイルです。漢字コードはShift_JIS。改行はCRLF。ファイル終端に Ctrl-Z が付いています。
KEN_ALL.CSVの先頭数行を示します。01101,"060 ","0600000","ホツカイドウ","サツポロシチユウオウク","イカニケイサイガナイバアイ","北海道","札幌市中央区","以下に掲載がない場合",0,0,0,0,0,0 01101,"064 ","0640941","ホツカイドウ","サツポロシチユウオウク","アサヒガオカ","北海道","札幌市中央区","旭ケ丘",0,0,1,0,0,0 01101,"060 ","0600041","ホツカイドウ","サツポロシチユウオウク","オオドオリヒガシ","北海道","札幌市中央区","大通東",0,0,1,0,0,0 01101,"060 ","0600042","ホツカイドウ","サツポロシチユウオウク","オオドオリニシ(1-19チヨウメ)","北海道","札幌市中央区","大通西(1~19丁目)",1,0,1,0,0,0
フィールド
A列 B C D E F G H I J K L M N O 01101,"064 ","0640941","ホツカイドウ","サツポロシチユウオウク","アサヒガオカ","北海道","札幌市中央区","旭ケ丘",0,0,1,0,0,0
A列 地方公共団体コード
B列 旧郵便番号(5桁)
C列 現郵便番号(7桁)D列 都道府県(半角カタカナ)
E列 市区町村(半角カタカナ)
F列 町域(半角カタカナ)G列 都道府県
H列 市区町村
I列 町域J列 一町域が二以上の郵便番号で表される場合
K列 小字毎に番地が起番されている町域
L列 丁目を有する町域の場合
M列 一つの郵便番号で二つ以上の町域を表す場合
N列 更新
O列 変更理由
町域の補足情報
町域には次のような補足情報が記述されています。
以下に掲載がない場合
○○市(又は町・村)の次に番地がくる場合
○○市(又は町・村)一円01101,"060 ","0600000","ホツカイドウ","サツポロシチユウオウク","イカニケイサイガナイバアイ","北海道","札幌市中央区","以下に掲載がない場合",0,0,0,0,0,0 08344,"31922","3192215","イバラキケン","ナカグンオオミヤマチ","オオミヤマチノツギニバンチガクルバアイ","茨城県","那珂郡大宮町","大宮町の次に番地がくる場合",0,0,0,0,0,0 10361,"37013","3701301","グンマケン","タノグンシンマチ","シンマチイチエン","群馬県","多野郡新町","新町一円",0,0,0,0,0,0
ただし「一円」という町域もあります。
25443,"52203","5220317","シガケン","イヌカミグンタガチョウ","イチエン","滋賀県","犬上郡多賀町","一円",0,0,0,0,0,0
1個の郵便番号に複数個の住所がある場合
例えば 7712102には45個、0294205には43個の住所があります。
注目すべきことは、これらの複数住所はKEN_ALL.CSV内で連続行とはかぎりません。36462,"77121","7712102","トクシマケン","ミマグンミマチヨウ","オオイケ","徳島県","美馬郡美馬町","大池",0,0,0,1,0,0 36462,"77121","7712106","トクシマケン","ミマグンミマチヨウ","オオイズミ","徳島県","美馬郡美馬町","大泉",0,0,0,1,0,0 36462,"77121","7712102","トクシマケン","ミマグンミマチヨウ","オオウエ","徳島県","美馬郡美馬町","大上",0,0,0,1,0,0 36462,"77121","7712102","トクシマケン","ミマグンミマチヨウ","オオキタ","徳島県","美馬郡美馬町","大北",0,0,0,1,0,0 36462,"77121","7712101","トクシマケン","ミマグンミマチヨウ","オオクボ","徳島県","美馬郡美馬町","大久保",0,0,0,1,0,0 36462,"77121","7712102","トクシマケン","ミマグンミマチヨウ","オオサコ","徳島県","美馬郡美馬町","大佐古",0,0,0,1,0,0 36462,"77121","7712102","トクシマケン","ミマグンミマチヨウ","オオマエ","徳島県","美馬郡美馬町","大前",0,0,0,1,0,0
1個の住所が複数行にわたる場合
町域が非常に長い場合、複数行に分割されます。この場合は連続行です。
(残念なことに継続行フラグはありません。各行の内容から継続行かどうか判断します)2行に分割された例
26106,"600 ","6008098","キヨウトフ","キヨウトシシモギヨウク","イナリチヨウ","京都府","京都市下京区","稲荷町(間之町通高辻下る、間之町通松原上る、高辻通間之町西",0,0,0,0,0,0 26106,"600 ","6008098","キヨウトフ","キヨウトシシモギヨウク","イナリチヨウ","京都府","京都市下京区","入、高辻通間之町東入、高辻通東洞院東入)",0,0,0,0,0,0
本来のデータ
26106,"600 ","6008098","キヨウトフ","キヨウトシシモギヨウク","イナリチヨウ","京都府","京都市下京区","稲荷町(間之町通高辻下る、間之町通松原上る、高辻通間之町西入、高辻通間之町東入、高辻通東洞院東入)",0,0,0,0,0,0
3行に分割された例
26106,"600 ","6008028","キヨウトフ","キヨウトシシモギヨウク","ウエマツチヨウ","京都府","京都市下京区","植松町(河原町通松原下る、河原町通万寿寺上る、寺町通町松原",0,0,0,1,0,0 26106,"600 ","6008028","キヨウトフ","キヨウトシシモギヨウク","ウエマツチヨウ","京都府","京都市下京区","下る、寺町通万寿寺上る、松原通寺町西入、松原通寺町東入、万寿寺通河原町",0,0,0,1,0,0 26106,"600 ","6008028","キヨウトフ","キヨウトシシモギヨウク","ウエマツチヨウ","京都府","京都市下京区","西入、万寿寺通寺町西入)",0,0,0,1,0,0
本来のデータ
26106,"600 ","6008028","キヨウトフ","キヨウトシシモギヨウク","ウエマツチヨウ","京都府","京都市下京区","植松町(河原町通松原下る、河原町通万寿寺上る、寺町通町松原下る、寺町通万寿寺上る、松原通寺町西入、松原通寺町東入、万寿寺通河原町西入、万寿寺通寺町西入)",0,0,0,1,0,0
町域の”( )”
郵政公社データは、住所から郵便番号を調べるために、町域に( )を記述し、
その( )内に丁目、番地、旧地名などが記述されている場合が多々あります。
( )内が非常に長い場合に、先に示した複数行に分割されるようです。01101,"060 ","0600042","ホツカイドウ","サツポロシチユウオウク","オオドオリニシ(1-19チヨウメ)","北海道","札幌市中央区","大通西(1~19丁目)",1,0,1,0,0,0 01106,"005 ","0050863","ホツカイドウ","サツポロシミナミク","トキワ(ソノタ)","北海道","札幌市南区","常盤(その他)",0,0,0,0,0,0 01202,"041 ","0410842","ホツカイドウ","ハコダテシ","タキサワチヨウ(57、97、98バンチ)","北海道","函館市","滝沢町(57、97、98番地)",1,0,0,0,0,0



最近のコメント