X Tutup
Skip to content

Commit 7c87436

Browse files
author
Johan Brichau
committed
read/write filestream api implementation on GRPharoPlatform for Pharo7+8
1 parent 74b46ba commit 7c87436

File tree

4 files changed

+17
-25
lines changed

4 files changed

+17
-25
lines changed

repository/Grease-Pharo70-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
file library
2+
readFileStreamOn: aString do: aBlock binary: aBoolean
3+
"Line end conversion is no longer done for ascii... TBD!"
4+
5+
^ aBoolean
6+
ifTrue: [ aString asFileReference binaryReadStreamDo: aBlock ]
7+
ifFalse: [ aString asFileReference readStreamEncoded: 'ascii' do: aBlock ]
Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,8 @@
11
file library
22
write: aStringOrByteArray toFile: aFileNameString inFolder: aFolderString
33
"writes aStringOrByteArray to a file named aFilenameString in the folder aFolderString"
4-
| folder stream fullFilePath |
5-
folder := FileSystem disk resolveString: aFolderString.
6-
fullFilePath := (folder / aFileNameString) asFileReference.
7-
stream := aStringOrByteArray isString
8-
ifTrue: [
9-
(MultiByteFileStream forceNewFileNamed: fullFilePath fullName)
10-
ascii;
11-
wantsLineEndConversion: true;
12-
yourself ]
13-
ifFalse: [ (FileStream forceNewFileNamed: fullFilePath fullName) binary ].
14-
[ stream nextPutAll: aStringOrByteArray ]
15-
ensure: [ stream close ]
4+
"TODO: wantsLineEndConversion: true; ??"
5+
^ self
6+
writeFileStreamOn: (aFolderString asFileReference / aFileNameString) ensureDelete pathString
7+
do: [ :stream | stream nextPutAll: aStringOrByteArray ]
8+
binary: aStringOrByteArray isString not
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
file library
2+
writeFileStreamOn: aString do: aBlock binary: aBoolean
3+
^ aBoolean
4+
ifTrue: [ aString asFileReference binaryWriteStreamDo: aBlock ]
5+
ifFalse: [ aString asFileReference writeStreamEncoded: 'ascii' do: aBlock ]

0 commit comments

Comments
 (0)
X Tutup