■吉里吉里/KAG/TJS雑談質問スレ■その29
■ このスレッドは過去ログ倉庫に格納されています
0414名前は開発中のものです。
2015/08/21(金) 03:28:13.96ID:2sqZawow分割されたarrayが返るわけではないのでその使い方はおかしい(manual.tjsは熟読しよう)
あとparserに文字列を代入してるので元のCSVParserの参照がなくなってたり
parser.parseって関数を直接参照しようとしてたり本当にTJSわかってるのレベルなんですが
まあ一応使い方サンプル書いとくけどもっと勉強したほうがいい
var text = "012,456,89,bcd";
var parser = new CSVParser();
with (parser) {
.result = [];
.doLine = function (c) { result.add(c); } incontextof parser;
.parse(text);
}
var stack = parser.result; // === [ [ "012", "456", "89", "bcd" ] ]
Debug.message(stack[0]*); // -> 012, 456, 89, bcd
stackは二重arrayになってるので注意ね
(text文字内に改行コードがあれば [ [1行目], [2行目], [3行目] ... ]になる)
1行目しか使わないなら doLine のとこ工夫すればどうとでもなる
あとお手軽に文字を区切りたいなら「"〜".split()」を使うという手もある
var text = "012,456,89,bcd";
var split = text.split(","); // === [ "012", "456", "89", "bcd" ]
Debug.message(split*); // -> 012, 456, 89, bcd
厳密にはCSVParserの動作とは違うけど(csv内のダブルクォートの扱いとか)
圧倒的にこっちの方が記述量が少なくて楽
■ このスレッドは過去ログ倉庫に格納されています