1

友人、Squeak4.1 で txt ファイルを開く方法は次のとおりです。コードは次のようになります。

at: #f put: (FileStream  open: '/root/test'  mode: FileStream read) !
f do: [ :c | Transcript nextPut: c ] !
f close !

ファイルを開いて + - * / 方程式を実行する方法について、何らかのヒントを提供できる人はいますか? 最初に感謝します:)

4

3 に答える 3

1
|f|
f:=StandardFileStream fileNamed: 'myFile.txt'.
Transcript show: f upToEnd.
f close.

単一の文字を読み取ることは適切とは見なされないため、UTF-8 検出なしで生の入力に StandardFileStream を使用し、upToEnd を読み取ります。

于 2011-02-15T21:14:35.867 に答える
1

私はこれらの方法のいずれかを使用します...

fileContents := FileStream 
                   readOnlyFileNamed: '/root/test' 
                   do: [:f | f contents ].

上記のブロック形式を使用すると、ファイルが自動的に閉じられます。忘れることはできません。または..

fileContents := (FileStream readOnlyFileNamed: '/root/test') 
                    contentsOfEntireFile.

#contentsOfEntireFile も自動的にファイルを閉じます。再度行う必要はありません。

ブロックを含む言語では、ストリームを手動で閉じる必要がないことを保証する高次のメソッドが利用できる場合、ストリームを手動で閉じることは意味がありません。

于 2011-02-15T18:30:57.870 に答える
1

これはうまくいくはずです:

|file fileContents|
file := FileStream fileNamed: '/root/test'.
fileContents := file contentsOfEntireFile.
file close.
于 2011-02-15T09:25:22.560 に答える