Hatena::Groupnadesiko

雪乃☆雫のなでしこ日和

2019-01-21

CSV取得!

| 19:14

 マイナビ連載41目は、閏年の計算でした。

 コレは、前にバイオリズムを作った時にやったね☆

 https://news.mynavi.jp/article/nadeshiko-41/

 あー・・・ワタシは常に、こんなカンジですよ~。いきなりプログラムに出来る能力が無いでね(´・ω・`)


 してして、ふと気が付いたら、なでしこ3がバージョンアップしてましたよ~☆

v3.0.53
・『関数』から始まる変数が定義できない問題を修正 #341
・『DOMイベント処理停止』(preventDefault)を追加。(#326)
・範囲コメントの中に改行あるとソースコードが正しく実行できない問題(#345)
・DOMイベント「~時」に、「の」の助詞を追加 (#340)
・関数JS関数実行』を追加 (#327)
・『ブラウザ移動』と『ブラウザ戻る』を追加。(#313)
・CSV取得, TSV取得, 表CSV変換, 表TSV変換追加

 おぉ、CSV取得ですよ!(喜)

 これで、自前の関数をいちいちくっつけなくても良くなるね♪

 ・・・と思ったらエラーになりました。

 どうも、v1非互換のようです。  ※2019/3/13追記 v3.0.55で修正されました!

 わたしの使用上で一番問題が発生するのは、最後の列がの行があった場合に、「,」が入っていると、次の行とくっついちゃうんですね。

データ=「いろは,にほへ,と
ちりぬ,るを,
わかよ,たれ,つねならむ」
データを言う

データ=データをCSV取得。
データを表CSV変換して言う

データが元に戻らずに、

いろは,にほへ,と
ちりぬ,るを,わかよ,たれ,つねならむ

 となっちゃう。

データ=「いろは,にほへ,と
ちりぬ,るを
わかよ,たれ,つねならむ」
データを言う

データ=データをCSV取得。
データを表CSV変換して言う

 「を」の後の「,」が無ければ元に戻るので、こういう仕様である、列数の多いデータの場合に改行を挟んでも1行と出来るようになってるのであるいうことなのかも知れない

 しかし、エクセルで作って、CSV形式で保存すると、このようなデータの場合、もれなく末尾に「,」が入って出力されてきちゃうので困ったもんだというところ(´・ω・`)


 とりあえず、CSV取得する前に、「,{改行}」を改行置換してやれば良いかなと思ったら、これまたうまくいかなかった。

 いや、簡易エディタ上では、うまくいきました。改行は、LFみたい。

 「GET送信した時」とかで、ファイルから取得する場合は、改行CRLF、CRLFのどれなのかを確認して置換してやらないとダメらしい。「,{CHR(13)}{CHR(10)}」を改行置換で出来ました。

 あるいは、ファイルの改行コードをLFとして保存するべきなのか。


の列が続く行では、「,」が複数個くっついてくるから、「,*{改行}」を改行正規表現置換、の方が良さそう

クジラ飛行机クジラ飛行机2019/01/26 20:40CSV取得の問題、修正しました!
https://github.com/kujirahand/nadesiko3/issues/353

ご報告に感謝です(^v^)y

雪乃☆雫雪乃☆雫2019/01/27 16:28なななんかスミマセン><
ご対応ありがとうございます!!!(≧▽≦)

トラックバック - http://nadesiko.g.hatena.ne.jp/snowdrops89/20190121