On 28 May 2016, at 19:05, Ken Burgett via swift-users <swift-users@swift.org> 
wrote:

> print(buf)


The trick here is to replace the above line with:

    print(String(validatingUTF8: buf))

`fgets` sets up `buf` to hold a C string, so you have to convert it to a Swift 
string.  How do you do this depends on the encoding of the bytes.  If you 
expect the C string to be UTF-8, then `String(validatingUTF8:)` is the way to 
go.

IMPORTANT: This conversion can fail, which is why the above will print a bunch 
of optional strings, and you will have to decide what to your program should do 
when it does.

                   *                   *                   *

btw This question came up recently.  See the thread for other suggestions about 
how to handle it.

<http://article.gmane.org/gmane.comp.lang.swift.user/1943>

Share and Enjoy
--
Quinn "The Eskimo!"                    <http://www.apple.com/developer/>
Apple Developer Relations, Developer Technical Support, Core OS/Hardware


_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to