Как мне прочитать файл из файловой системы в приложении командной строки Swift?

Целая глава 4 рассказывает о конверсиях, но я думаю, вас в основном интересуют следующие:

4.5 Интегральные рекламные акции [conv.prom] rvalue типа char, подписанный char, unsigned char, short int , или unsigned short int может быть преобразован в rvalue типа int, если int может представлять все значения типа источника; В противном случае исходное значение rvalue может быть преобразовано в rvalue типа unsigned int. Rvalue типа wchar_t (3.9.1) или тип перечисления (7.2) может быть преобразован в rvalue первого из следующих типов, который может представлять все значения его базового типа: int, unsigned int, long или unsigned длинный. Rvalue для целочисленного битового поля (9.6) можно преобразовать в r значение типа int, если int может представлять все значения битового поля; в противном случае его можно преобразовать в unsigned int, если unsigned int может отображать все значения битового поля. Если бит-поле еще больше, к нему не применяется целая реклама. Если бит-поле имеет нумерованный тип, оно рассматривается как любое другое значение этого типа для целей продвижения по службе. Rvalue типа bool может быть преобразовано в rvalue типа int, при этом false становится равным нулю, а true становится единым. Эти преобразования называются интегральными акциями.

4.6 Продвижение по плавающей запятой [conv.fpprom] rvalue типа float может быть преобразовано в rvalue типа double. Значение не изменяется. Это преобразование называется продвижением с плавающей запятой.

Поэтому все преобразования, включающие float, - результат float.

Только тот, который включает оба int - результат: int: int / int = int

0
задан Mark Stickley 18 January 2019 в 09:54
поделиться

1 ответ

Я скопировал ваш код, скачал пример файла json на свой рабочий стол и переименовал его в example_ 1.json (я включил пробел в имя файла).

import Foundation

// Set the file path
let path = "/Users⁩/username/Desktop/example_ 1.json⁩"

do {
    // Get the contents
    let contents = try String(contentsOfFile: path, encoding: .utf8)
    print(contents)
}
catch let error as NSError {
    print("Ooops! Something went wrong: \(error)")
}

Он успешно распечатал файл. Это также сработало, когда я определил содержимое как NSString.

let contents = try NSString(contentsOfFile: path, 
                            encoding: String.Encoding.ascii.rawValue)

Я использую Swift 4.2.1

0
ответ дан codeherk 18 January 2019 в 09:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: