Can you open a bug entry with clear examples?
We should improve this part.��
After having the interpretation of strings sucks. I do not like it I prefer

FileLocator C / 'temp' / 'e8720bb4-b90a-0d00-9b1f-008709e5552b.txt'

On Sun, Apr 30, 2017 at 6:54 PM, Casimiro de Almeida Barreto <casimiro.barreto@gmail.com> wrote:
Hello,

-----Mensagem original-----
De: Pharo-dev [mailto:pharo-dev-bounces@lists.pharo.org] Em nome de Sven Van Caekenberghe
Enviada em: domingo, 30 de abril de 2017 05:30
Para: Pharo Development List <pharo-dev@lists.pharo.org>
Assunto: Re: [Pharo-dev] Problem with FileSystem in WIndows


> On 30 Apr 2017, at 09:48, Max Leske <maxleske@gmail.com> wrote:
>
> Hi Casimiro,
>
> have you tried using normal slashes in the path name? FileSystem should convert those to system path delimiters automatically. So:

It seems that FileSystem does not convert / into \ .
((FileSystem root) / 'c:\temp\tempfile.txt')�� writeStream won��t work but...
FileStream fileNamed: 'C:\temp\tempfile.txt' works ok.

So... I could make it work for getting a stream both for Unix and Windows:

�� �� �� �� OSPlatform currentPlatformName = 'unix'
�� �� �� �� ifTrue: [
�� �� �� �� �� �� �� �� [ str := (fs / fn) writeStream ] on: Exception do: [ ^ nil ] ]
�� �� �� �� ifFalse: [
�� �� �� �� �� �� �� �� [ str := FileStream fileNamed: fn ] on: Exception do: [ ^ nil ] ].

And to delete:

�� �� �� �� OSPlatform currentPlatformName = 'unix'
�� �� �� �� ifTrue: [
�� �� �� �� �� �� �� �� (FileSystem root / aFileName) delete ]
�� �� �� �� ifFalse: [
�� �� �� �� �� �� �� �� rgx := RxMatcher forString: '^[A-Z]\:'.
�� �� �� �� �� �� �� �� drive := rgx matchesIn: aFileName.
�� �� �� �� �� �� �� �� drive := (drive at: 1) copyWithRegex: '\:' matchesReplacedWith: ''.
�� �� �� �� �� �� �� �� ((FileLocator driveNamed: drive)�� / (aFileName copyWithRegex: '^[A-Z]\:' matchesReplacedWith: '')) delete ]

Not good, nor elegant nor anything close to good transparent code but... works :'(

>
> C:/temp/e8720bb4-b90a-0d00-9b1f-008709e5552b.txt
>
> And possibly you'll need a leading slash, as "C:" is a reference to the root of the file system:
>
> /C:/temp/e8720bb4-b90a-0d00-9b1f-008709e5552b.txt

There is also the following option:

�� �� �� �� FileLocator C / 'temp' / 'e8720bb4-b90a-0d00-9b1f-008709e5552b.txt'

> Cheers,
> Max
>
>> On 30 Apr 2017, at 03:15, Casimiro de Almeida Barreto <casimiro.barreto@gmail.com> wrote:
>>
>> Good night all.
>>
>> I��ve had trouble in windows concerning FileSystem.
>>
>> ((FileSystem disk root) / ���C:\temp\e8720bb4-b90a-0d00-9b1f-008709e5552b.txt���) delete
>>
>> Fails as if the file didn��t exist. Message:
>>
>> FileDoesNotExist: Path / ���C:\temp\e8720bb4-b90a-0d00-9b1f-008709e5552b.txt���
>>
>> And I wonder what��s wrong. Because it works in linux and MacOS.
>>
>> Trasncript show: ((FileSYstem disk root) / ���C:\temp\e8720bb4-b90a-0d00-9b1f-008709e5552b.txt���)
>>
>> Returns:
>>
>> File @ C:\temp\e8720bb4-b90a-0d00-9b1f-008709e5552b.txt\
>>
>> And I wonder where the last \ came from and if is it that is messing all and how to fix things.
>>
>> Best regards,
>>
>> Casimiro Barreto
>>
>>�� �� �� Livre de v��rus. www.avast.com.
>




---
Este email foi escaneado pelo Avast antiv��rus.
https://www.avast.com/antivirus