私はを使用するように言ったthisの質問に数日前に尋ねました。私はGłowackiのExpert Delphiを読んでおり、彼はTStreamReader/TStreamWriterを使用しています。コメントで私はこれを読んだ:ストリームを持つファイルを開くと、
TStreamReaderは、テキストデータを読むためのヘルパークラスです。ファイルは で、バイナリです。代わりにTFileStreamを直接使用してください
私はこれに少し問題があります。 binaryファイルにはテキストが含まれておらず、TFileStream
にはバイナリを読むことができます(ドキュメントに記載されています)。 TStreamWriter
を使用してファイルの一連の数値を出力し、このファイルの内容を読み取るとします。私はTFileStreamでそれを許可しましたか?
私はTStreamWriterがコンストラクタにTEncoding
を持っているので、例えばutf-8またはansiを指定する必要があります。これはファイルの構造に影響しますか?
私はこれで新しく、私は実際に私がオンラインで見つけた専門家の話題を理解していません。 TFileStreamはバイナリファイル用で、TStreamReaderは何らかのテキストが入っているファイル用です。
バイナリファイルの場合は、[TBinaryReader](http://docwiki.embarcadero.com/Libraries/en/System.Classes.TBinaryReader)と[TBinaryWriter](http://docwiki.embarcadero.com/Libraries/)を使用できます。 ja/System.Classes.TBinaryWriter)ヘルパークラス。 – Victoria
@Victoriaありがとう:)実際には、ファイルを読むために使用できるクラスがたくさんあり、正しいものを選択する方法がわかりません。 –
これらのクラスはちょうどヘルパーです。彼らはあなたが望むものを保存して読むのを助けます。たとえば、[TStreamWriter](http://docwiki.embarcadero.com/Libraries/en/System.Classes.TStreamWriter)のリファレンスには、その目的についての説明が書かれています。_「文字を書き込むライター」_書き込みしたくない場合文字、それを使用しないでください。 [TBinaryWriter](http://docwiki.embarcadero.com/Libraries/en/System.Classes。TBinaryWriter)_ "TBinaryWriterを使用してプリミティブデータ型を特定のエンコーディングのバイナリ値としてストリームに書き込みます。" (文字列さえあれば)、それはあなたを助けることができます... – Victoria