いろいろやってみるにっき

てきとーに生きている奴の日記

古いエントリのサムネイル画像がリンク切れになってたりするけど、チマチマ修正中


Windowsでjson2csvを使いたいのでGoとGit Extensionsをインストールしてみた Go編

JSONCSVにしてくれというご要望が。JSONのままか、DBに放り込んだほうがハンドリングはラクだと思うんだが。しかも「Windowsで」という話。なんか一番厄介な組み合わせになってしまった。

先頭文字列削除jsの作成

元データJSONはテキストになっているのだが、厳密にいうと先頭56文字にタイムスタンプや発信元情報があり、JSONになっていない。そのタイムスタンプや発信元情報56文字を削除するJavaScriptを書いた。

var strScriptPath;
var strReadFile;
var strWriteFile;
var objReadStream;
var objWriteStream;
var strText;
var JSONText;

var objFileSys = new ActiveXObject("Scripting.FileSystemObject");

strScriptPath = String(WScript.ScriptFullName).replace(WScript.ScriptName,"");
strOpenFile = objFileSys.BuildPath(strScriptPath, "acdc.txt");
strWriteFile = objFileSys.BuildPath(strScriptPath,"acdc.json");

objReadStream = objFileSys.OpenTextFile(strOpenFile);
objWriteStream = objFileSys.OpenTextFile(strWriteFile, 2, true);

while (objReadStream.AtEndOfLine==false) {

    strText = objReadStream.ReadLine();

    JSONText = strText.slice(56);

    objWriteStream.WriteLine(JSONText);

}

objReadStream.Close();
objWriteStream.Close();

objReadStream = null;
objWriteStream = null;
objFileSys = null;

Go言語のインストール

Go概要

これでjson2csvインストール済マシンがあればcsvに切り出せるのだが、Windowsでというご要望なのでjson2csvをインストールしなければならない。

json2csvはGo言語でできている。Go言語はGoogle製である。Go (プログラミング言語) - Wikipediaから引用する。

Goはプログラミング言語のひとつ。グーグル社によって開発されており[4]、設計にロブ・パイク、ケン・トンプソンらが関わっている。


主な特徴として、軽量スレッディングのための機能、Pythonのような動的型付き言語のようなプログラミングの容易性、などがある。Go処理系としてはコンパイラのみが開発されている。


発表当初はLinuxMac OS Xのみしかサポートしていなかったが[5]、2012年3月にリリースされたバージョン1からはWindowsもサポートされている[6]。また、2011年5月10日に公開された Google App Engine 1.5.0 でも、Go言語がサポートされている[7]。 

基礎からわかる Go言語

基礎からわかる Go言語

 
プログラミング言語Goフレーズブック

プログラミング言語Goフレーズブック

  • 作者: David Chisnall,デイビッド・チズナール,柴田芳樹
  • 出版社/メーカー: ピアソン桐原
  • 発売日: 2012/10/04
  • メディア: 単行本(ソフトカバー)
  • 購入: 1人 クリック: 5回
  • この商品を含むブログを見る
 
Go言語インストール 

Downloads - go - The Go Programming Language - Google Project Hostingから最新のmsiファイルをダウンロードする。

f:id:shigeo-t:20150111035356p:plain

go1.2.1.windows-amd64.msiを実行する。[Next]をクリックする。

f:id:shigeo-t:20150111040656p:plain

[Next]をクリックする。

f:id:shigeo-t:20150111040721p:plain

[Install]をクリックする。 

f:id:shigeo-t:20150111040832p:plain

[Next]をクリックする。

f:id:shigeo-t:20150111040831p:plain

UACが動くので承諾して進める。

f:id:shigeo-t:20150111040833p:plain

全部終了するとこの画面になる。[Finish]をクリックする。

f:id:shigeo-t:20150111040834p:plain

Go言語の環境変数設定

インストールは完了したのだが、このままではパスが通っていないため使えない。設定する環境変数は下記の3つ。

  • GOPATH
  • GOROOT
  • PATH

Windows 8.1にインストールしたので、[Windows]+[X]でメニューを出し、「システム(Y)」を選ぶ。

f:id:shigeo-t:20150111041708p:plain

システムが表示されるので「システムの詳細設定」を選択する。

f:id:shigeo-t:20150111040835p:plain

システムのプロパティが表示されるので、[環境変数(N) …]をクリックする。

f:id:shigeo-t:20150111040836p:plain

設定した後なのでGOPATH,GOROOTなども存在しているがこういう画面に切り替わる。最初の設定ではGOPATH,GOROOTは存在しないので、[新規]をクリックして設定する。

f:id:shigeo-t:20150111040837p:plain

GOPATHはこのように設定する。このc:\go\projectというフォルダは存在しないので、別途作成しておく。

f:id:shigeo-t:20150111040839p:plain

続いてGOROOT。さきほどのインストールでGo言語をインストールしたフォルダを指定する

f:id:shigeo-t:20150111042506p:plain

最後はPATHである。PATHは、これまでの設定情報を壊さないように、気を付ける必要がある。末尾にこのように設定する。

f:id:shigeo-t:20150111043142p:plain

パスが通ったかどうかの確認。コマンドプロンプトでgoと入れてみる。

f:id:shigeo-t:20150111043656p:plain

このようにメッセージが表示されれば環境変数設定はOK。

 

これでGo言語は完了。長くなったのでここで一旦切る。  

 

お時間あったら、他のエントリもクリックして頂ければ幸いです。