2

少し質問があります。はい、これは宿題であり、私はそれを理解しようとしています。

これが求められていることです。

•[ロード]ボタンをクリックしたら、テキストボックスで指定されたファイル(txtFilePath:相対パスではない絶対パス)を読み取り、リストボックス内にあるオブジェクトを追加します。

•ユーザーが[保存]ボタンをクリックすると、現在内部にある値を切り捨てずに、選択したレコードをtxtFilePath(相対パスではなく絶対パス)で指定されたファイルに書き込みます。

私はまだこれを学んでいるので、誰かが私に説明してもらえますか?ボタンとテキストボックスがあり、保存も同じです。保存ボタンを使用すると、保存したい場合と同じコードが表示されます。しかし、私が収集しているものから、保存したファイルをロードできるデータベースがあります。それとも私はこれをそれよりも難しくしていますか?

4

6 に答える 6

2

いいえ、データベースはありません。これらの手順では、record==既存のファイルに追加some selected itemする必要があります。ストリームとライターを使用してファイルをディスクに保存するだけで、要件を満たします。

于 2012-04-23T16:49:13.910 に答える
1

いいえ、データベースはありません。あなたがすることは、Windowsファイルシステム(例えば、あなたのハードドライブ上のファイル)と相互作用することです。名前空間のクラスを使用して、System.IOファイルをロードおよび保存します。

「絶対パス」とは、ルート化された式として表される、ドライブ内のファイルの一意の場所を指します。「相対パス」は、特定の場所を基準にしたファイルを指す部分パスです。

c:\foo\bar\baz\my files\homework.txt
..\..\homework.txt

それらは絶対パスと相対パスです。

ここでどれだけ詳細を探しているのかわかりません。ファイルシステムの動作の完全な概要を説明するのは難しいです。ファイル管理を扱うMSDNの基本的な例を確認することをお勧めします。

于 2012-04-23T16:52:46.493 に答える
1

まず、ファイルの読み取りと書き込みの方法を確認します。これが私が見つけた良いリンクです:

見てみな

次に、読み取り/書き込みコードを各ボタンのButton_Clickイベントに配置します(Visual Studioを使用している場合は、ボタンをダブルクリックしてこのイベントを自動作成します)。

テキストボックスの.text()プロパティにアクセスすることで、テキストボックスからパスを簡単に取得できます。

string path = myTextBox.Text;

私がc#で何かをコーディングしてからしばらく経ちましたが、これはかなり基本的なことであり、役立つはずだと思います。

于 2012-04-23T16:53:55.710 に答える
1

このテーマは非常に幅広いトピックであるため、詳細な分析を行うことは困難です。

ファイルの相互作用には、ファイルを簡単にロードおよび保存するためのクラスを持つSystem.IO名前空間を使用する必要があります。

http://msdn.microsoft.com/en-us/library/system.io.aspx

上記のリンクは、System.IOを使用してファイル管理を開始する方法に関するMSDNの優れたリファレンスです。

幸運を!

于 2012-04-23T16:55:27.177 に答える
1

私があなたを正しく理解している場合、あなたの質問は、保存する前にファイルをもう一度読み取る必要があるかどうか、または新しいファイルを作成した場合とは異なる場合に処理する必要があるかどうかです。

私は「ノー」と言うでしょう。ファイルの内容はすでにリストボックスに読み込まれています。編集したコンテンツをリストボックスから取得し(ユーザーがそれを使い終わったとき)、ファイルに保存するだけです(そこにあるものはすべて上書きします)。

于 2012-04-23T16:55:33.633 に答える
1

ロードの場合:

  1. ファイルを1行ずつ読み取る
  2. 各行をリストボックスアイテムに追加します

保存の場合:

  1. 切り捨てずに保存ファイルを開きます(つまり、ファイルに追加します
  2. リストボックスアイテムのアイテムごとに、保存ファイルに書き込みます
于 2012-04-23T17:18:00.257 に答える