• 締切済み

データベースの内容を取り出しhtml化するシステム

VB2005を使っています。 データベースの内容を取り出して、その内容をVBで作成したブラウザ上にhtmlで表示するシステムを作りたいのですが、 Form1 ID、名前、カレンダーの日付を受け取り、そのデータを元にデータベースから履歴を取り出す。 Form2 Form1で取り出した値をチェックボックスに表示 チェックボックスでチェックされた場合 1 テキストファイルを選択(htmlソースの一部) 2 1で選択したテキストファイルと取り出した値を置換する 3 2を保存 4 htmlソースの入ったテキスト(1とは別の物)を取り出して2を追加で書き込みする 5 htmlファイルで4を表示する 1~3まではできたのですが、4の部分ができません。 My.Computer.FileSystem.WriteAllText(fName3, msg, True, System.Text.Encoding.GetEncoding("shift_jis")) msgは追加したい部分 fName3はmsgを追加するテキスト これでは追加書き込みしても、追加書き込みになりません。 どうしてでしょうか。 あと、何か参考になるURL、ソースなどがございましたら教えてもらえませんでしょうか。

みんなの回答

  • HIROs-NET
  • ベストアンサー率78% (15/19)
回答No.2

手前みそで恐縮ですが、参考URLにて指定した文字列をファイルに追加するサンプルを掲載しています。 ご参考まで。

参考URL:
http://hiro.wankuma.com/VBNET2005/File/File01.htm
回答No.1

他のコードが無いので、多分ですが・・・ WriteAllText自体はやるべき事をやってるんだと思います. それでも、 >これでは追加書き込みしても、追加書き込みになりません。 と、意図した結果にならないのは、 1.fName3かmsgの内容が正しくない。 2.読み書きが正しくない。 のどちらかではないでしょうか? 1.の場合 fName3が追加するファイル名と違った場合、エラーなく新たにfName3のファイルを作ったと思います。 msgが内容がなければ、追加しても変わりがありません。 WriteAllTextの行でブレークポイントを入れて確認するか、書き込んだファイルのタイムスタンプで更新されているか確認すると変更されたのかわかると思います。 2.の場合 質問の文を読んでいると、 「4 htmlソースの入ったテキスト(1とは別の物)を取り出して2を追加で書き込みする」 とあるのですが、WriteAllTextはファイルに対して行うので、追加するファイルを取り出す必要はなく、これをその後書き込んだりしてませんか? それと、流れから推測すると、4のファイルは何度も使う雛型だと思うので、WriteAllTextでappend=trueを使うこと自体、どこかおかしいような・・・

関連するQ&A

  • データベースの表示形式

    よろしくお願いします。 Accessで作成したデータベースをVB2005にデータセットして使おうと思っています。2点質問があります。 1.Formにデザイナで、データソースからドラッグして作りました。 デバックをしたところ、Accessに入っている時刻のデータ「9:00」がForm上では、「1899/12/30 9:00」となっています。 「9:00」とだけ表示したいのですが設定の仕方を教えてください。 2.テキストボックスにユーザーに時刻の入力をして欲しいのですが、半角だけ使って入力してもらえるような良い方法はあるでしょうか?DateTimePickerでFormatを使ったほうがよいでしょうか?Trueにすると、秒まで出ますが、秒まではいりません。表示されない方法はありますか?

  • vaSpreadの表示が消えてしまいます。

    VBの初心者です。よろしくお願いします。 VB6.0とvaSpread3.0を使用しています。 1度Spreadに表示した値が、新たな値を(1行下に)表示した際に消えてしまいます。 1度表示したものを残したまま、新たな行に値を追加していきたいのですが、何か方法はありますでしょうか? -------------行いたい動作------------- ・Form1.vaSpread1のチェックボックスの値(1or0)をForm1.Command1クリック後、Form2.vaSpread2に表示。 ・Form2.Command2を押すとForm1を表示し、再度チェックボックスを押せる状態にし、Form1.Command1を押すとForm2.vaSpread2の次の行に値を前回のチェック分を表示したまま追加表示したい。 この動作の繰り返し。 -------------コード------------- 【標準モジュール/Module1】 Public Row As Integer Public check As Integer 【Form1】 Private Sub Command1_Click()   vaSpread1.Row = 1 'チェックボックスのセル位置(行)   vaSpread1.Col = 2 'チェックボックスのセル位置(列)   Module1.check = Val(vaSpread1.Text)   Form2.Show End Sub 【Form2】 Private Sub Form_Load()   Call spreadShow End Sub Private Sub spreadShow()   vaSpread2.Row = Module1.Row + 1 '値を表示するセル指定(行)   vaSpread2.Col = 1 '値を表示するセル指定(列)   vaSpread2.Value = Module1.check End Sub Private Sub Command1_Click()   Form1.vaSpread1.Row = 1 'チェックボックスのセル位置(行)   Form1.vaSpread1.Col = 2 'チェックボックスのセル位置(行)   Form1.vaSpread1.Text = 0 'チェックボックスを元に戻す   Module1.Row = Module1.Row + 1   Form1.Show   Unload Form2 End Sub それとも、下記コードでは消してしまうような動作をしているのでしょうか? よろしくお願いいたします。

  • テーブルのデータをテキストボックスに表示させるには?

    ソース修正をしています。 が、約4年ぶりの仕事で、行き詰まっています。 AccessVBAは初心者です。 この問題で、もう3日を費やしてしまいました・・・。 どなたか、助けてくださいませ!! Formに約10個のテキストボックスがあり、そこにはあるテーブルのデータが表示されるようになっています。 そこで、もう一つ表示させたいデータがあったので 1)Formにテキストボックスを1個追加し、 2)テーブルに一つフィールドを追加し、 3)テーブルにデータを入れるためのINSERT文を修正し、 4)実行してみました。 が、テキストボックスには #Name? が表示されて、どうも思ったと通りに動きません。 テーブルを確認すると、データはちゃんと入っていますが、テキストボックスにはどうしても値が入ってきません。 よろしくお願いします。m(__)m

  • ASPでのチェックボックスの使い方について

    初心者ですみません。 ASPを使い、データベース(mdbファイル)にアクセスし、 データを共有しようとしています。 そのなかで、チェックボックスを使いたいのですが、チェックボックスの 値の取得と、更新時にそれがどうなるのか(ちゃんとチェックが ついた状態で表示されるのか)がわかりません。 フォームには、 <input type="checkbox" name="ビル:受付番号" value="OK"> というように、valueを設定していますが、データベースにこの情報が 格納されるには、 RS("ビル:受付番号") = Request.Form("ビル:受付番号") では「OK」という値は格納されないんですね。 #ちなみに格納先はテキスト型です 別にOKじゃなくても、falseでもなんでもいいんですが、情報が ちゃんとデータベースに反映されるようにまずしたいです。 さらにデータベースに載せた情報は後から更新することも考えられますので、 更新作業をしたときに、ちゃんとOKとなっている部分が チェックボックスにチェックされた状態で表示されることを期待して いるのですが、そういったことも可能でしょうか。 全然勉強不足で申し訳ありません。 こういったことはVBを勉強すればわかるんでしょうか。 何卒ご指南ください。

  • 数値→チェックボックスの選択

    access vba にてプログラムを作成中です。 データベースはoracleですが、oracleテーブルから0と1の値をselectしてaccess form にチェックボックスの選択ありと選択なしと言う形で表示したいです。 oracleテーブルより0と1を取得し、access form のテキストボックスに0と1を表示する事は出来るのですが、これをチェックボックスの「レ(ペケ?)」のありとなしと言う形で表示するにはどうしたらいいでしょうか?

  • データベースの扱い方について

    使っている環境はVB6.0です。 もともとデータベースが用意されていて、リストボックスにデータベースのデータを表示させたいのですが、どこでどのようにSQLの文を使ったら良いかなど全くわかりません・・・なので誰かわかる方お願い致します。

  • チェックボックスの生成

    初めまして。 外部テキストから値を読み込んで、チェックボックスを生成し、データの受け取り、データベースの書き込みまでを行いたいのですが、良い方法を教えて頂けないでしょうか? 外部テキストの形式は DBテーブルのフィールド名|HTML表示用の文字列 という状態で、中身は A|あああ B|いいい C|- D|えええ という感じになっています。(- は今のところ利用しない項目) 外部テキストからチェックボックスの生成を行う理由は、利用するデータの増減に対する修正がテキストファイルのみで完了するためです。 自力でも試してみたのですが、チェックボックスのデータを受け取れなかったり、受け取れてもデータベースの更新がうまくいかなかったりで頓挫してしまったので、チェックボックス自体の生成からデータベースへのデータ渡しまでが上手く行く方法を教えて頂けると助かります。 お手数ですが、ご教授下さい。宜しくお願い致します。

  • データベースが壊れ開けなくなる

    C#でデータベースを追加・削除・更新をするプログラムをつくっているのですが、ソースをいじっていないのに突然データベースが開けなくなりました。 ーーーーーーーーーーーーーーーーーーーーーーーー 指定された除数 (4) の列は、組み込みの .NET システム型として表現できない DBNull 値を含んでいます。SqlTypes プロパティまたは IsDBNull プロパティを使用してください。 ーーーーーーーーーーーーーーーーーーーーーーーー このようなメッセージが表示されているのですが、これは壊れて使えなくなってしまったと考えるしかないでしょうか? 環境は、visualstudio2010でデータベースはSQL Server Compact 3.5を使用しています。

  • VB.NET 2008 データベースの接続の方法について教えてください

    VB.NET 2008 データベースの接続の方法について教えてください。 VB6から2008へ乗り換え中の初心者です。 作成しているプログラムでは、DATASETデザイナでデータベースに接続し、 「TABLEADAPTER」を利用して、画面にテキストボックスを作成しています。 また、それとは別に標準モジュールの中で、「OleDb.OleDbDataAdapter」を記述して、 データベースからデータを取得しています。 そこで質問なのですが、 ・VB2008において、このように標準モジュールにおいては、ソースを記述して  「OleDb.OleDbDataAdapter」を用いる方法が正しいのでしょうか?  (フォーム側は項目も多いためTABLEADAPTERから項目を貼り付けるのが便利で助かっています。) ・そして、このように2種類の接続を用いた場合に、  データベースの名前や、ユーザ名、パスワードをINIファイル等から取得するには  どのようにすればいいでしょうか?  色々とサイトを検索して「OleDb.OleDbDataAdapter」側はINIファイルから  取得する方法を見つけたのですが、  フォーム側のデータソースの情報も同じ様にINIファイルから取得出来るのでしょうか?  (プロジェクトのプロパティに記述されている事はなんとかみつけたのですが・・・   どの様にすればいいか分かりません。) 分かりにくい文章とは思いますが、お許しください。 どうぞご教示お願いします。

  • テーブルのデータをテキストボックスに表示させるには?II

    先日、同じ質問しましたが、 回答はあったものの、解決出来ずに、困っています!! どなたか、助けてください! Formに約10個のテキストボックスがあり、そこにはあるテーブルのデータが表示されるようになっています。 そこで、もう一つ表示させたいデータがあったので 1)Formにテキストボックスを1個追加し、 2)テーブルに一つフィールドを追加し、 3)テーブルにデータを入れるためのINSERT文を修正し、 4)実行してみました。 が、テキストボックスには #Name? が表示されて、どうも思ったと通りに動きません。 テーブルを確認すると、データはちゃんと入っていますが、テキストボックスにはどうしても値が入ってきません。 また、追加前の状態の約10個のテキストボックスには、ちゃんとデータが渡ってきます。 このたび追加したテキストボックスだけがダメです。 テキストボックスの作成方法がNGなのでしょうか? よろしくお願いします。m(__)m

専門家に質問してみよう