0

テキストファイルを読み取るためにバイトレベルの関数が必要な理由。つまり、文字列の配列を含むファイルです。それなら、なぜそれを文字列に直接保存できないのか。なぜどの言語(java、c、c ++、またはas3)でも、それらを読み取るためにバイトレベルの関数を使用する必要があるのですか?

私がこのようなことをすることができれば、それはかなり簡単かもしれません:

var a_str:String = new String();

var myFile:File  ;

a_str = String( myFile.read("xyz.txt") ) ;

trace ( a_str ) ; // << content of the file xyz.txt 
4

4 に答える 4

1

すべてのテキストが同じようにレンダリングされるわけではないからです。一部の古い文字セットは1バイト文字で表されますが、他のセットはマルチバイト文字です。その結果、それぞれのライターは、文字だけでなくバイトを操作できる必要があります。

于 2012-05-02T19:32:37.783 に答える
0

ファイルの終わりを文字でどのように保存しますか?考えられる文字の適切な長さのシーケンスでは、テキストに表示され、ファイルの終わりとして扱われ、ファイルが途中で終了する可能性があります。

于 2012-05-02T19:32:38.000 に答える
0

簡単な答えは?通常、メモリはバイトアドレス可能であるため、ファイルを読み取る場合も同じことが予想されます。ほとんどのCスタイルのプログラミング言語では、文字列は通常、単なるバイトのコレクションであり、通常はヌル文字NUL(0x00)で終了します。

于 2012-05-02T19:35:01.587 に答える
0

ファイル全体を文字列に読み込むことができる言語はたくさんあります。Pythonはできます; 私はPerlができるとかなり確信しています。その機能は、もちろん、一度に1バイトずつファイルを読み取る低レベルの機能に基づいて構築されています(または、より大きなチャンクが提供されるかどうかに関係なく、バイトのシーケンスとして)。

使用しているツールが気に入らない場合は、より良いツールを入手してください。

于 2012-05-04T20:17:04.510 に答える