• 締切済み

データ書き出し時の、データ区切りについて

初心者ですが、ご教授ください。 Perlなどで、データを書き出す時に、よく、<>とか、,(カンマ)とか使うと思うのですが、その他の区切り文字として何がオススメなのでしょうか?アフィリエイトなどのリンク先URL内で、<>とか、,(カンマ)とか、"(ダブルクォーテーション)などが使われているため、これに換わる、区切り文字は、何がよいのか教えてもらいたいです。

  • Perl
  • 回答数3
  • ありがとう数3

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

「URI」と限定していいなら「< や > (% も?) はエンコードすることにして <> を区切りに使う」というのがわりとシンプルかも.

回答No.2

>Perlなどで、データを書き出す時に、よく、<>とか、,(カンマ)とか使うと思うのですが、その他の区切り文字として何がオススメなのでしょうか? データベースMySQL等を使用しない場合、わたしは「<>」を区切りによう使用しています。「,」は、データの文字列に「,」があると大変なことになります。 とは言え、エスケープ処理をすれば大丈夫ですが・・・ 実際には、あまり使用していませんがタブ久切りがなんとなく良いように思ってはいます。 あくまでも個人的なご意見でしかありません。。。

kaori64501
質問者

お礼

hihin2003さん、こんばんは。エスケープ処理すれば、URL中に「<」「>」文字があっても大丈夫なのですね。知りませんでした。貴重なアドバイスありがとうございます。今から、調べて勉強してみます。

回答No.1

その時によって違います。 基本は「,」やタブですが、どちらにしろ、そのデータの中にその文字が含まれる可能性がある場合は、エスケープする必要があります。 最近、私はSQLiteでデータを管理するようにしています。 今まで見た中では、文字列を区切り文字にしている例がありました「=====」とか。

kaori64501
質問者

お礼

wildcat-ypさん、こんばんは。早速の回答ありがとうございます。こんなに早くレスがあるなんて思いませんでした。 「====」ですか・・・これは、書き出したいURL内に「=」があった場合、問題ないのでしょうか? SQLiteっていうのも、調べてみます。が、そこまで知識ないので・・・ムリカナ。

関連するQ&A

  • 区切り文字をTABにしたい

    CGI-Perl初心者です。 エントリデータを、カンマ区切りテキストデータで保存するようにしていますが、(入門書のファイル操作を参照しながら何とか作れた代物です)後で大きな問題が発生しました。このデータには金額を入れる項目があって、例えば10,000円とカンマを入れると当たり前ですが、区切り文字と判断して10と000円を分けてしまうのです。そこでTAB区切りテキストデータに変更したいのですが、 $data=join(",",変数,変数,変数,変数); としている","の部分をタブにするにはどうしたら良いのでしょうか?

    • ベストアンサー
    • Perl
  • タブ区切りデータからダブルコーテーションを外したい

    エクセルでタブ区切りのデータを開き編集・保存すると、データ 内にカンマが入ってる部分が" "で囲まれます。なんらかの設定 でこのダブルコーテーションをなくすことは可能でしょうか? 現在は保存後エディタで開いて、置換しております。 エクセルのシートをコピー→エディタに貼り付けて、エディタから 保存する方法も考えましたが、何か単純な設定でいけるのかな…? と思い、質問した次第ですm(__)m 頻繁にする作業なので(1日10回以上)、何とか簡単な方法は ないかと考えております。

  • エクセルのカンマ区切りのCSV出力

    エクセルのカンマ区切りのCSV出力について質問します。 CSVファイルとしてカンマ区切りで出力したいのですが、さらに各項目にダブルコーテーション(")をつけて出力したいのです。 例) 通常のCSV 01,02,03 やりたいCSV出力 "01","02","03" ご存知の方がいらっしゃいましたら回答お願いします。

  • エクセルでのCSV書きだし

    エクセルで編集したデータをフィールドごとに、ダブルコーテーション("")カンマ(,)で区切ったテキストで書き出ししたいのですがそういうことはできますでしょうか? "00","11","22","33"といった具合です 宜しくお願い致します

  • ダブルクォーテーションカンマ区切りのcsv形式ファイルへの変換方法

    Excelファイルをダブルクォーテーションカンマ区切りのcsv形式ファイルへ変換する方法を教えてください。 "●●","○"○,"◆◆"

  • csvカンマ区切りデータに=""を入力したい

    csvカンマ区切りデータに、例えば、 ="00",="123",="456" といった感じで入力したいのです。 大元のcsvカンマ区切りデータで、 00,123,456 が入っているので、これをExcelを使ってText変換や書式設定で文字列にして みたのですが、csvデータとしては=""としては保存されていないのです。 どなたか、こういった型変換に詳しいかたご連絡をお待ちしています。

  • OPENステートメントでOutputモードをしてデータを書込むとき・・・

    Write#ステートメントで書込むと、どうしてもダブルコーテーションが含まれているんですが、はずすことはできるのでしょうか!? Print#ステートメントは固定長になってしまうので。。。 読込んでいるファイルはCSV(カンマ区切り)です。 教えてくださいm(_ _)m

  • Access2000でのCSV出力(エクスポート)

    お世話になります。 Access2000を利用して、あるテーブルデータをCSVファイルとしてエクスポートしようとしています。 そのときに、すべての要素を「"」(ダブルコーテーション)で囲み(「,」カンマで区切り)たいのですが、 データ型が文字型のときは設定で上手く囲めるものの、数値型では値がそのまま出力されてしまいます。 数値型のフィールドもダブルコーテーションで囲む方法はありませんでしょうか? よろしくお願いいたします。 例)"ああああ","A10000",100         ↓   "ああああ","A10000","100" ← ここ

  • 「"」(ダブルクォーテーション)で囲まれた「,」をキャンセルしてcsvの値を抽出するには

    111,"あいうえお",,"さしす,せそ" のテキストファイルを value[0] = 111 value[1] = あいうえお value[2] = value[3] = さしす,せそ いう形に配列に入れたいと思っています。見てもらえばわかると思いますが、数字には「"」(ダブルクォーテーション)が付かなくて、「"」の中に入っている「,」(カンマ)は区切り記号とはみなされず値として取り込んでいます。 splitの正規表現など使えないか苦悩しています。いまだ解決方法見つけられず。 テキストファイルの「"」(ダブルクォーテーション)有り/無しや順番などは都度変更されます。 カンマ区切りで、「"」(ダブルクォーテーション)で囲まれた部分は外して値を取り出すにはどうしたらいいのでしょう? ご存知の方、ご教授ください。

    • ベストアンサー
    • PHP
  • ExcelのCSV形式について

    ExcelデータをCSV形式で保存するとき文字列はダブルコーテーション、数字列はそのままでカンマ区切りしたいです。確か123のCSV形式はそうなってたと思います。お手数ですが御回答、宜しくお願い致します。

専門家に質問してみよう