Невозможно записать данные в файл в iOS Swift - PullRequest
0 голосов
/ 30 января 2020

Я вручную создал файл amutha.txt в папке документов. Я пытался записать данные в этот файл. код, который я использовал:

let string="Amuthapriya"
try string.write(to:fileName, atomically: true, encoding: String.Encoding.utf8)

Это выполнено правильно, означает отсутствие исключений или ошибок. Но потом, когда я открываю amutha.txt, файл пуст. Почему строка не записана в этом файле? Какую ошибку я делаю? Мой код:

func getDocumentsDirectory() -> URL {
    let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
    let documentsDirectory = paths[0]
    return documentsDirectory
}

@objc func buttonPressed(sender:UIButton) {
    print(sender.titleLabel?.text)
    let documentUrl:URL = getDocumentsDirectory()
    let fileName=documentUrl.appendingPathComponent("priya.txt", isDirectory: false)
    let filePath=fileName.path
    print( FileManager.default.fileExists(atPath: filePath))
    do {
        let string="Amuthapriya"
        try string.write(to:fileName, atomically: true, encoding: String.Encoding.utf8)
        print("written successfully")
        print("filePath: \(filePath)") 
    } catch {

    }
}

Ответы [ 2 ]

1 голос
/ 30 января 2020

Просто попробуйте напечатать путь вашего файла в консоли, потому что вы смотрите неправильный файл, и проверьте этот файл, если он там доступен или нет, и проверьте содержимое

do {
        let string="Amuthapriya"
        try string.write(to:fileName, atomically: true, encoding: String.Encoding.utf8)
        print("written successfully")
        print("filePath: \(filePath)")  // check file here
    } catch {

    }
0 голосов
/ 30 января 2020

Я вручную создал файл amutha.txt в папке документов. Но потом, когда я открываю amutha.txt , файл пуст.

Но текст записывается в priya.txt .

let fileName=documentUrl.appendingPathComponent("priya.txt", isDirectory: false)

Итак, вы смотрите не в тот файл.

(Также не меняйте URL-адрес файла на строку пути к файлу. Используйте только URL-адрес файла.)

...