1

毎回「hello.txt」ファイルから読み取り、この行を「bye.text」と画面に書き込みたいと思います。これどうやってするの?「ファイル」に表示される唯一の機能は次のとおりです。

  • readAllText
  • readAllLines
  • WriteAllLines など
4

2 に答える 2

10

ジャックが言うように、行ごとの関数を使用してファイル (またはその他のストリーム) を操作する場合は、 StreamWriterand型を使用する必要があります。StreamReader次のようにコンストラクターを使用するだけです。

open System.IO

let addLine (line:string) =     
  use wr = StreamWriter("D:\\temp\\test.txt", true)
  wr.WriteLine(line)

ここでStreamWriterは、パス (文字列として) を受け取るコンストラクターのオーバーロードと、既存のファイルに追加することを指定するブール値を使用しています。また、キーワードを使用して、完了use時にファイルが閉じられるようにしていることにも注意してください。addLine

コンテンツを一連の行として読み取るには、StreamReader同様に使用できます。コンストラクターを使用して型のインスタンスを作成し、結果ReadLineが得られるまでメソッドを使用します。null

于 2013-02-28T18:58:08.533 に答える
3

クラスのメソッドは、System.IO.Fileファイル全体の読み取り/書き込みのみをサポートします。より詳細なアプローチ (たとえば、行ごとの読み取り/書き込み) が必要な場合は、 and のようなものを使用する必要がありStreamReaderますStreamWriter

于 2013-02-28T15:54:22.453 に答える