SffAirMakerとSffAirEditorって共にCSVエクスポートとインポート機能を持っているのだけど、そのCSVの形式が微妙に違うがために相互に扱えないのが面倒なところ。ぶっちゃけ
SAEで開けないのをSffAirMakerで開く → CSVで吐く → SAEでインポート
でSAEで開こうとしたのに出来なかったことに「がー!」となったので、勢いあまってSffAirMakerのCSVからSAEのCSVにするawkスクリプトを書いた。
#!gawk # # sam2sae.awk # # SffAirMaker形式のCSVをSffAirEditor形式のCSVに変換する function trim(str, tmp) { tmp = str; sub(/^[ \t]+/, "", tmp); sub(/[ \t]+$/, "", tmp); return tmp; } BEGIN { FS=","; } { shared = 0; if (trim($5) == "0") { shared = 1; } else { shared = 0; } printf("\"%s.%s\",%s,%s,%s,%s,%d\n", trim($6), trim($7), trim($1), trim($2), trim($3), trim($4), shared); }
追記 逆向き (SffAirEditor → SffAirMaker) も作った
こっちのほうが面倒だった
#!gawk # # sae2sam.awk # # SffAirEditor形式のCSVをSffAirMaker形式のCSVに変換する function trim(str, tmp) { tmp = str; sub(/^[ \t]+/, "", tmp); sub(/[ \t]+$/, "", tmp); return tmp; } BEGIN { FS=","; } { shared = 0; if (trim($6) == "0") { shared = 1; } else { shared = 0; } filename = trim($1); sub(/^\"+/, "", filename); sub(/\"+$/, "", filename); split(filename, filenames, "."); printf("%s, %s, %s, %s, %d, %s, %s\n", trim($2), trim($3), trim($4), trim($5), shared, filenames[1], filenames[2]); }