• 締切済み

関連がある複数のテキストファイルの扱い方

8月7日の質問No.8708191「Accessクロス集計で列数が多い場合の処理方法」ですが一部、未解決となります。 ですので、一旦その質問は締切りまして、再度内容を吟味して質問させていただきます。 関連会社から商品情報(十万件以上)に関する複数の「.txt」ファイルを頂きました。 この「.txt」ファイルには、商品に関する情報が記載されており、それぞれが関連し合ったファイルです。 これらを適切に関連を持たせ、最終的にはアップロード用に「.csv」として出力させたい為、内容が横1行に吐き出されるようにしたいです。 初歩的な質問になりますが教えてください。 作業環境はWindows7にExcel2003、Access2003がインストールされていますが、そのどちらも素人程度にしか扱えない状況です。 「.txt」の主情報(商品マスタ)は十万行以上になります。 金銭的なバックアップは見込めませんが、無料ソフトの導入などは問題ないです。 また、私以上に素人がこの処理をするかもしれない場合、どのような方法でアップロード用の情報にするのが良いでしょうか?

この投稿のマルチメディアは削除されているためご覧いただけません。

みんなの回答

  • chayamati
  • ベストアンサー率41% (255/611)
回答No.7

回答No.6の前半が飛んでいましたので再提示します。ごめん 回答No.5のお礼でシステムを再構築します。 少し息抜きです。 VB記述画面は既に見つけられた、フォームを右クリックしてボックスのイベントからコードビルダ デザインビューのコード表示ツールから開く事も出来ます。 1.フォームを右クリックしてボックスのイベントからコードビルダ で VBAの基本構文でボックス名にイベントがついた 下記は商品登録ボックスのイベントがクリックで入ったときの状態です Private Sub 商品登録_Click() End Sub 2.コード表示ツールから開いたときは 画面の左のプルダウンでボックス名等を選び、 右のプルダウンで動作を選ぶと 1.と同様のVBAの基本が表示されます。 テーブルのフィールドと連結しているときは、データの入力になり、 連結してないときは変数となります。 ボックス名の確認は、フィールドプロパティーのその他タグの初めにあります。 ラベルボックスもボックス名は同じ場所ですが、 画面に表示する文字列は書式タグの最初の表題で。 これらをふまえて、メニュー画面に日付関係のテキストボックスを配置し 次のコードをコード表示ツールから開いた画面にコピペして下さい。 Private Sub Form_Load() 基準日 = Date 基準日変更RTN 開始日 = 月初日: 終了日 = 月末日 End Sub Private Sub 商品登録_Click() End Sub Private Sub 前日_Click() 基準日 = 基準日 - 1 基準日変更RTN End Sub Private Sub 翌日_Click() 基準日 = 基準日 + 1 基準日変更RTN End Sub Private Sub 基準日_BeforeUpdate(Cancel As Integer) 基準日変更RTN End Sub Private Sub 基準日変更RTN() 月初日 = 基準日 - Day(基準日) + 1 月末日 = 月初日 + 31: 月末日 = 月末日 - Day(月末日) End Sub

全文を見る
すると、全ての回答が全文表示されます。
  • chayamati
  • ベストアンサー率41% (255/611)
回答No.6

Private Sub Form_Load() 基準日 = Date 基準日変更RTN 開始日 = 月初日: 終了日 = 月末日 End Sub Private Sub 商品登録_Click() End Sub Private Sub 前日_Click() 基準日 = 基準日 - 1 基準日変更RTN End Sub Private Sub 翌日_Click() 基準日 = 基準日 + 1 基準日変更RTN End Sub Private Sub 基準日_BeforeUpdate(Cancel As Integer) 基準日変更RTN End Sub Private Sub 基準日変更RTN() 月初日 = 基準日 - Day(基準日) + 1 月末日 = 月初日 + 31: 月末日 = 月末日 - Day(月末日) End Sub

全文を見る
すると、全ての回答が全文表示されます。
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.5

おじゃまします 今回のご質問は、多数のテキストファイルを今後どうするか・・・ というものになりますか? テキストファイル内を変更しないのなら、 手っ取り早いのは、テキストファイルはインポートしないで リンクテーブルとして参照するようにしておくというのはどうでしょう? リンクしておけば、それはテーブルとして扱えるので、 各テーブルの結び付けとかは、クエリを作っておけばよいと思います。 試しに、新規 mdb を作成後、 添付ファイルの所からリンクテーブルを作成してみてください。 メッセージに従って進めていけば、出来上がると思います。 ※ インポートした時よりも、テーブルへのアクセスは遅くなると思います テキストファイルの置き場所が変わったら、 メニューのツールにあるリンクテーブルマネージャを使って変更します ※ 遅くて使えない・・・ なら、却下ということで なお、前の質問は良く見ていませんが >【「hoge.txt」のクロス集計理想】 > 商品番号,商品説明,使用上の注意,成分,含有成分,…他、項目2000以上 > A11111,○○○○,△△△,□□□□, , > F22222,◆◆◆, , ,▼▼▼▼ Access でのフィールド数/Excel での列数は、 2003 環境ではどちらも 255 近辺がリミットだと思います。 2007 以降であれば、Excel の列数は 16384 に広がった様です。 この 255 近辺のリミット以内に収める方向に向かっていたのでしょうか? 直接 csv ファイルを作るのであれば、このリミットは関係なくなると思います。 Accessで縦に情報が展開されてるテーブルの処理 http://okwave.jp/qa/q8733543.html に回答しましたが、これをチョッと変更すれば対応できると思います。 この方法で良いのなら、サンプルを作ってみますが・・・ ※ 上記のクロス集計理想で、直接 csv ファイルをつくるには、 基本的に使用するテーブルは1つで【説明.txt】をリンクしたもの (もしくは、【説明.txt】をインポートしたもの) (正式な出力項目がわからないので、上記理想の見える項目に特化してみると) 直接【説明.txt】ファイルを触る方法もありますが・・・ テーブルとして参照できた方が簡単と思います。 ※ 商品番号って、商品コードの事?

lotus2014
質問者

補足

回答ありがとうございます。 何種類も同じような質問をしていてすみません。 長くなっては読みづらいのでファイルの詳細を省きましたが、この質問が全てを意味していまして、 全部別の質問としてQを立てていますが 1.質問No.8708191「Accessクロス集計で列数が多い場合の処理方法」では、この全ての「.txt」ファイルの関係性と処理、 2.質問No.8733543「Accessで縦に情報が展開されてるテーブルの処理」では、質問No.8708191に含まれる1つの「.txt」ファイルの処理、 3.今回の質問は「これは本当にAccessで処理する案件なのか?」という事です。「.txt」は今後更新される可能性があります。 ↓ ↓ ↓ ↓ ↓ ↓ ↓  実は1つの話に元づいています 1.リレーションされたテーブルを選択クエリでそれぞれの「.txt」の必要な項目を拾って1つのアップロード用「.csv」を作っていたがうまくいかない 2.この縦に情報が展開されるテーブルのお陰で項目の数×縦になってしまう為、このテーブルだけでもなんとかできないか 3.アップロード用に「.csv」として出力したかった為、“横一列”に躍起になっていたが、本当にAccessで横一列が最適な方法? この様な事だったのです。 (むしろ更に分かりづらいでしょうか??) > テキストファイル内を変更しないのなら、 なるほど、リンクテーブルとして参照するという方法もあるのですね。 テキストファイル内は変更しないので、試してみます。 自宅にAccessがない為、休み明けの明後日にでも試した内容をこちらにご報告しますね。 > 直接 csv ファイルを作るのであれば、このリミットは関係なくなると思います。 当初の質問は初の質問且つ、Accessについてよく知らない為、要領を得ない質問になってしまったのですが、この「hoge.txt」こそが質問No.8733543「Accessで縦に情報が展開されてるテーブルの処理」の事です。 実際はアップロード時に制限がある為、ある程度の範囲だけ取り出したいので直接CSVファイルを作らなくても問題ないです。 ※他の「.txt」ファイルとは切り分けたい内容の為、どちらでも構わないのです。 > 直接【説明.txt】ファイルを触る方法もありますが・・・ テキストファイルに変更を加えたくはない為リンクやインポートが理想…ですかね? > ※ 商品番号って、商品コードの事? 色々な呼び方をして紛らわしいのですが、商品番号=商品コードです。

全文を見る
すると、全ての回答が全文表示されます。
  • ki073
  • ベストアンサー率77% (491/634)
回答No.4

chayamatiさんが精力的に書き込まれているのでしゃしゃり出るのは気が引けますが、前回の質問を閉め切られたので切り口を変えたいのかなと感じたので書き込みをしました。 横の列数がものすごく多そうなので手でいろいろ設定するのはかなり大変かなという気がしていましたので、それなら別のやり方もと思い書き込みました。Rは本来は統計計算用のソフトウエアであまり馴染みがないと思いますが、このような集計の分野に適した命令が用意されており、CVSファイルを読み込む命令(read.cvs)、データを結合する命令(merge)、CSVファイルを書き込む命令(write.csv)の三つの命令をただ並べるだけで集計できそうなのです。日本語の情報はかなり有って検索すればでてきますが、少し癖があって手ほどきを受けないと最初は無理かなと感じています。一旦出来上がると(といっても三種類+αの命令なので)簡単なマニュアルさえ作っておけば初心者でも使えるので、質問者さん向きかなと(最初は手ほどきを受けた方が効率が全然違う) 興味を持たれましたらあたらしく質問でもしてください。

lotus2014
質問者

お礼

私が出来る・出来ないはともかくとして、そういった有益な情報を教えて頂けてとても感謝しております^^ なるほど、統計ソフトと言えど求めている「読み込み」「結合」「書き込み」を兼ね備えているのならうってつけです。 R言語というものでプログラミングするようですね。 プログラミングはやったことがない為てこずりそうですが、書籍なども出ているようですし週末を利用し少し触ってみようと思います。

全文を見る
すると、全ての回答が全文表示されます。
  • chayamati
  • ベストアンサー率41% (255/611)
回答No.3

他の件は後で対応しますが ▼困っているのは「説明.txt」データをAccessにインポートした時、 下の例のように縦に情報を展開している為、横1列に情報が並ばない事です。 商品番号/配番/項目/項目の説明 A0000001/1000/注意/高温多湿の…(長文) A0000001/2000/説明/大人気です…(長文) C0000003/1000/注意/高温多湿の…(長文) C0000003/3000/規格/100ml 少し視点が違いますが、今まで配番が気になっていましたが、 A0000001の配番が1000と2000の2つがあり 配番の1000がA0000001とC0000003にあります 配番1000の項目/項目の説明がありますね、配番とは説明の主キーになるのでは 配番でソートし同じ配番の「項目/項目の説明」が一致するか確認ください

lotus2014
質問者

お礼

回答ありがとうございます。 「説明.txt」のフィールドの関係性ですが、この「説明.txt」は商品説明欄の情報が入っております。 配番は商品説明欄の中での表示順位です。 配番=項目でもあります。その為、項目名が多少違くても同じ意味合いのものは配番が一致します。 また、項目の説明は同じものもありますが(サイズ違いの商品などがそれに当たります)、基本的に違う説明です。 ▼例えば「説明.txt」がこうあった場合… 商品番号/配番/項目/項目の説明 C0000001/1/規格/3cm×15cm×1cm A0000001/2/説明/大人気です…(長文) A0000001/3/注意/高温多湿の…(長文) C0000003/1/規格/100ml A0000003/2/説明/大人気です…(長文) C0000003/3/ご注意下さい/長時間の…(長文) C0000003/4/表示色について/実際の色と…(長文) ▼商品説明欄はこういった順番で表示されます。 【A0000001】 規格:3cm×15cm×1cm 説明:大人気です…(長文) 注意:高温多湿の…(長文) 【A0000003】 規格:100ml 説明:大人気です…(長文) ご注意下さい:長時間の…(長文) 表示色について:実際の色と…(長文)

全文を見る
すると、全ての回答が全文表示されます。
  • ki073
  • ベストアンサー率77% (491/634)
回答No.2

前の質問を完全に理解している訳ではないのですが、GUIインターフェースを主体としたAcessやExcelではちょっと荷が重いかなと思ったりしたいます。 このような処理は比較的簡単にできるツールがいくつか有るのですが、気分を変えて挑戦してみる気があればここに書き込むか、新しい質問にでもしてください。 データベースで処理するのが一番正当だとは思いますが、スクリプト言語で処理するのが手っ取り早いように感じます。 rubyなどでも良いのですが、Windowsですのでインストールを考えるとRが意外と適しているのかと思います。 http://cran.md.tsukuba.ac.jp/ このソフトはデータをメモリ上に全部読み込んでからやるので、データ量が多そうなので分割しないと駄目な可能性はありますが、比較的簡単にできるのではないかと思います。

lotus2014
質問者

お礼

回答ありがとうございます。 比較的簡単にできるツールもやはり存在してるのですね。 探してみたいと思います。 どちらかと言うと、Excelなどの定番ツールであれば行き詰っても検索でかなりの解決策がヒットすると思われますので、1から操作を覚えそれ1つで処理を完結させるものより、Excelなどを主に使い補助的に別ツールを利用する方法が、スマートではないのですが、わかりやすいかなと考えておりました。 ご紹介頂きましたRと触り比べてより良い方法を考えてみようと思います。 貴重な情報をありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • chayamati
  • ベストアンサー率41% (255/611)
回答No.1

補足下さい 回答No.27の最後に聞きましたが、大変お忙しいようなので抜粋です。 関連会社から商品情報について次の件補足願います 1.テキストファイルの1行目は見出し行ですか  VBAでインポートするとき、この項目名が全てテーブルのフィールドが必要です  またテキストファイル名をVBAに記述します。  ファイル名と項目名も補足して下さい。 2.在庫情報も商品番号、在庫情報の2項目ですか  在庫情報には 商品番号、日付、在庫数等が必要かと 3.成分情報と注意事項、これは一つのファイルor二つのファイル?  一つファイルのときは区切り記号(スペース、コンマ、等)はありますか

lotus2014
質問者

お礼

▼商品情報に関する「.txt」について ・商品マスタ.txt(商品に関する主要情報) ・ブランド.txt(ブランドのリスト) ・メーカー.txt(製造メーカーのリスト) ・カテゴリ.txt(カテゴリのリスト) ・カテゴリ関連.txt(カテゴリ間の関連が記載) ・説明.txt(商品に関する説明) ・成分.txt(成分の内容が記載) ・成分関連.txt(商品マスタと成分の関連が記載) ▼「.txt」のフィールド名について 【商品マスタ.txt】 商品コード(文字列) 商品名(文字列) メーカーコード(文字列) ブランドコード(文字列) 成分コード(文字列) 販売価格(数値) 廃盤フラグ(数値) 更新日(数値) 【ブランド.txt】 ブランドコード(文字列) ブランド名(文字列) 【メーカー.txt】 メーカーコード(文字列) メーカー名(文字列) 【カテゴリ.txt】 カテゴリコード(文字列) カテゴリ名(文字列) 親カテゴリ(文字列) 成分フラグ(数値) 階層(数値) 【カテゴリ関連.txt】 大分類コード(数値) 中分類コード(数値) 小分類コード(数値) 成分コード(数値) 【説明.txt】 商品コード(文字列) 配番(数値) 項目(文字列) 項目の説明(文字列) 【成分.txt】 成分コード(文字列) 成分名(文字列) 成分説明(文字列) 【成分関連.txt】 商品コード(文字列) 成分コード(文字列) ▼困っているのは「説明.txt」データをAccessにインポートした時、下の例のように縦に情報を展開している為、横1列に情報が並ばない事です。 商品番号/配番/項目/項目の説明 A0000001/1000/注意/高温多湿の…(長文) A0000001/2000/説明/大人気です…(長文) C0000003/1000/注意/高温多湿の…(長文) C0000003/3000/規格/100ml

lotus2014
質問者

補足

回答ありがとうございます。 > 関連会社から商品情報について次の件補足願います 失礼しました。回答No.27のお礼の方へ返答したのですが、返答自体長くて埋もれちゃってますね^^; > 1.テキストファイルの1行目は見出し行ですか いいえ、いきなり情報が入っています。 ファイル名と項目名につきましてはこちらのQのお礼へ書きますね。 ※項目名のうち、明らかに使用しないものに関しては省いて記載しています。 > 2.在庫情報も商品番号、在庫情報の2項目ですか(在庫情報には 商品番号、日付、在庫数) いいえ、在庫情報としての単独の「.txt」データ自体がありません。 複数の「.txt」データがあり、そのうちの商品マスタらしき「.txt」のフィールドに含まれた状態でなら在庫情報は存在しますが、フラグのような「1」か「0」です。(在庫というよりは廃盤情報) また、フラグを拾い上げるような「.txt」データはありません。 > 3.成分情報と注意事項、これは一つのファイルor二つのファイル? > 一つファイルのときは区切り記号(スペース、コンマ、等)はありますか これは1つのファイルです。 「.txt」データをテキストエディタで開いた時にカンマやスペースが見られない為、区切り記号はタブとしています。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 複数のテキストファイルを1つにまとめる

    同一フォルダ内にある複数のテキストファイルの内容を1つにまとめる方法を探しております。 例えば、 a.txt, b.txt, c.txt が同一フォルダにあり、 それぞれの内容が AAA BBB CCC である時に、これらをまとめて matome.txtとして、その内容が AAA BBB CCC となるようなプログラムを書きたいのですが、どの様な方法が考えられますでしょうか。 上の例では3つのテキストファイルですが、実際に処理したいファイルは数百個になる為、一つ一つファイル名を入力する作業が大変で困っております。 同一フォルダ内のファイルをファイル名順に一度に読み込み、まとめる方法がありましたらお教え下さい。

  • バッチファイルで複数のテキストファイルの置換

    バッチファイルで以下のような処理を行うことはできないでしょうか? フォルダ1以下の全てのテキストファイル内の abcde という文字列を あいうえお に置換して、上書き保存ではなく 元のファイル名+(編集済み).txt というファイル名で同じ場所に保存できないでしょうか。 バッチファイルで出来ない場合他の物でも構いません。 ――――――――――――――――――――――――――――― 処理前 フォルダ1   │   ├フォルダ2   │  └ファイル1.txt (内容:123abcde)   │   ├フォルダ3   │  └フォルダ4   │     └ファイル2.txt (内容:abcde123abcde123)   │   └フォルダ5      └ファイル3.txt (内容:456fghij) ――――――――――――――――――――――――――――― ↓ ――――――――――――――――――――――――――――― 処理後 フォルダ1   │   ├フォルダ2   │  └ファイル1.txt (内容:123abcde)   │  └ファイル1(編集済).txt (内容:123あいうえお)   │   ├フォルダ3   │  └フォルダ4   │     ├ファイル2.txt (内容:abcde123abcde123)   │     └ファイル2(編集済).txt (内容:あいうえお123あいうえお123)   │   └フォルダ5      └ファイル3.txt (内容:456fghij) ――――――――――――――――――――――――――――― こんな感じで出来ないでしょうか。 よろしくお願いします。

  • 沢山のテキストファイルを一つに

    下のように、Testフォルダに Area1、Area2・・・とフォルダがあり、 その中に、Sample.txtがあります。 C:\Test\Area1\Sample.txt C:\Test\Area2\Sample.txt C:\Test\Area3\Sample.txt ・ ・ ・ C:\Test\Area30\Sample.txt それぞのフォルダのSample.txtは "1234567890.123" "2345678901.234" "3456789012.345" . . . のように、数桁の数字が数百行並んでいます。 例えば、 Area1\Sample.txt に100行、 Area2\Sample.txt に200行、 Area3\Sample.txt に150行あるとします。 これを、 1~100行にArea1\Sample.txtの内容を、 101~300行にArea2\Sample.txtの内容を、 301~450行にArea3\Sample.txtの内容を、 として、Area30までのSample.txtを並べた 一つのテイストファイルに書き直したいのですが、 何しろ沢山あるので、一つ一つ開いてコピぺでは、 書き落としなども心配ですし、毎回大変時間が掛かります。 簡単に並べて書き出す方法はないでしょうか。 Excel等を使ってできないでしょうか。 宜しくお願いします。

  • バッチファイルでテキストファイルを分割したい

    テキストファイルを、指定した数値の倍数の行を、指定した個数に分割するバッチファイルを作成しようとしています。 例えば、以下の様な内容の「in.txt」というテキストファイルを3分割したい場合、 ----- in.txtの内容 ----- 1 2 3 4 5 6 7 8 9 10 ------------------------ 以下の様な内容で、 「out1.txt」「out2.txt」「out3.txt」として出力したいのです。 ----- out1.txtの内容 ----- 1 4 7 10 -------------------------- ----- out2.txtの内容 ----- 2 5 8 -------------------------- ----- out3.txtの内容 ----- 3 6 9 -------------------------- 自分はプログラミングの知識がないので、WEBに書かれている構文を少し書き換えたりして試しているのですが、うまく行きません。 AWKを使い、以下のようなバッチファイルを作成して実行してみましたが、「out3.txt」だけがうまく行きませんでした。構文の意味も分からないので修正も出来ません。 awk "NR%%3==1" "in.txt" > "out1.txt" awk "NR%%3==2" "in.txt" > "out2.txt" awk "NR%%3==3" "in.txt" > "out3.txt" AWKの解説ページを読み始めたのですが、時間的な猶予があまり無く、今回質問させて頂いた処理が出来るようになるまでまだ時間が掛かりそうなので、どなたかお分かりの方がおられましたお教え頂けないでしょうか。 AWKでなくとも、sedでもPerlでもその他のコマンドでも構いませんし、スクリプトファイルを読み込めるコマンドでしたらスクリプトでの書き方でも結構ですので、ご存知の方がおられましたらお教え頂けないでしょうか。

  • 複数テキストを一行ずつファイル名を付けて結合する方法

    複数テキストを一行ずつファイル名を付けて結合する方法 フォルダにある複数のテキストデータを1つのテキストデータに結合する際、テキスト1行毎の先頭にファイル名を付けたいのですが。具体的には以下の通りです。 最終的にはexcelに取込み処理するので、excelのマクロかDOS系でできるとあり難いです。 [file1.txt] 1111111111 2222 33333333 [file2.txt] 123 1234 ↓ [all.txt] file1.txt 1111111111 file1.txt 2222 file1.txt 33333333 file2.txt 123 file2.txt 1234

  • テキストファイルを一つにまとめる

    一つののフォルダ内に複数のテキストファイルがあります a.txt b.txt c.txt があり内容はそれぞれ 日付 商品名 数量と同一項目にしてあります これを同じフォルダに自動で一つのファイルにまとめる方法はありませんか 超初心者です よろしくお願いします

  • Excel VBAで列ごとのデータをテキストファイルへ書くには?

    エクセルのシート(たとえばSheet1)が以下のようになっているとします。 A B C D E F 1 商品A 11111111 あいうえお 3 1000 2 商品B 22222222 かくくけこ 1 2500 3 商品C 33333333 さしすせそ 2 3500 ・ ・ これを決まった列ごとにテキストファイル(固定ファイル名)に書き出すということは、エクセルのVBAで可能でしょうか? テキストファイルの内容は以下のようにしたいのです。 E列を数量として、その分だけのテキスト行を書き出したいのですが… <<bbb.txt>> 商品A 商品A 商品A 商品B 商品C 商品C ・ ・ <<ccc.txt>> 11111111 11111111 11111111 22222222 33333333 33333333 ・ ・ <<fff.txt>> 1000 1000 1000 2500 3500 3500 ・ ・ また、このようなことが参考になるHPがあればお教え願いたいのですが。 以上よろしくお願いします。

  • テキストファイルを1行ずつ別のファイルに分割する

    400行ぐらいのテキストファイルを、1行ずつ別のファイルに分割したいと思います。 ファイル名は**001.txtのように、(**は任意の文字列、数字は連番)なってくれれば嬉しいです。 どなたかこのような処理のできる簡単な方法をご存じないでしょうか? よろしくお願いします。

  • エクセルの各シートに複数のtxtファイルを取り込む

    Excel2013を用いたデータ整理をしているのですが,複数のファイルを扱う上でマクロを用いた効率化をしたいと思い,質問させていただきました. いま,Folder1 というフォルダに,text1 から text40 までの 40個のtxtファイルがあります. これらのファイルを,エクセル上であらかじめ作成してある Sheet1 から Sheet40 にそれぞれ貼り付けたいと考えています. txtファイルは,4列で構成されており,タブでそれぞれ区切られています. 行数は20,481行です. txtの中には,0 の値が入った箇所もあるため,その情報が消えないで貼り付けられると望ましいです. また,タブのところでしっかり区切られ,違うセルに貼り付けられると,ありがたいです. 質問は以上です. お手数ですが,よろしくお願いします.

  • 外部テキストファイルの書き換えと作成について

    外部テキストファイルの操作について悩んでおります。 アドバイスお願いします。 まず、外部テキストファイルdate.txtファイルの中身は以下のような具合です。 2/19 2/18 2/09 2/14 2/17 というたった五行の日付情報です。 この日付情報をユーザーがhtml上(実際はdate.phpというファイルです)で自由に変更できるようにしたいというのが私の処理の理想です。 そこで、この日付情報のそれぞれをhtmlのinput type=textのvalue値として、まず読み込ませて表示させます。 そしてユーザーは5つそれぞれを書き換え、もしくはそのまま変更なしでもかまいませんが、最終的にsubmitでphpに送信します。(自分自身、date.phpに送信します。) そのあと、date.txtファイルがユーザーの指定通りに書き換えられるという仕組みです。 さらに、その書き換えられた際に、date.txtファイルとは別に、updated.txtファイルを生成したいと思っています。(生成というか、常にdate.txtファイルの中身が変更される際に、updated.txtファイルも変更されるようにしたいということです。) そのupdated.txtファイルの中身は、 v_hensu1=2/19&v_hensu2=2/17&v_hensu3=2/14&v_hensu4=2/17&v_hensu5=2/15 というようにしたいと思っています。改行は必要ありません。 date.txtの日付情報を上からそれぞれv_hensu1、v_hensu2に当てはめていって、それぞれを&でつなぐだけです。 以上で処理の流れは完了です。 そこでわからないのは、「最初にdate.txtファイルを開く際に使う関数」と、 次に「date.txtを書き換える際に使う関数」と、 「updated.txtを作るための関数」です。 ファイル操作について、また簡単な例をあげていただけますと幸いです。どうぞ宜しくお願いいたします。

    • ベストアンサー
    • PHP

専門家に質問してみよう