毎回「hello.txt」ファイルから読み取り、この行を「bye.text」と画面に書き込みたいと思います。これどうやってするの?「ファイル」に表示される唯一の機能は次のとおりです。
- readAllText
- readAllLines
- WriteAllLines など
ジャックが言うように、行ごとの関数を使用してファイル (またはその他のストリーム) を操作する場合は、 StreamWriter
and型を使用する必要があります。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
クラスのメソッドは、System.IO.File
ファイル全体の読み取り/書き込みのみをサポートします。より詳細なアプローチ (たとえば、行ごとの読み取り/書き込み) が必要な場合は、 and のようなものを使用する必要がありStreamReader
ますStreamWriter
。