как можно открыть текстовый файл с телефона в react native приложении для загрузки его в состояние и затем работать с ним
Как открыть текстовый файл с телефона в react native приложении
Ответы (2 шт):
Автор решения: Anatoly
→ Ссылка
Использовал более года назад react-native-document-picker в связке с react-native-fs. К примеру:
import DocumentPicker from 'react-native-document-picker';
import RNFS from 'react-native-fs';
// Функция для выбора файла
const pickFile = async () => {
try {
const res = await DocumentPicker.pick({
type: [DocumentPicker.types.allFiles],
});
const fileContent = await RNFS.readFile(res.uri, 'utf8');
console.log( fileContent);
// Ваши операции с fileContent
} catch (err) {
if (DocumentPicker.isCancel(err)) {
console.log('Canceled');
} else {
console.error('Error picking file:', err);
}
}
};
Скорее всего есть изменения: документация react-native-document-picker, документация react-native-fs
Автор решения: Fedor71
→ Ссылка
import React, { useState } from 'react' import * as DocumentPicker from 'expo-document-picker'
const [file, setFile] = useState('')
const getFile = async () => {
try {
const response = await DocumentPicker.getDocumentAsync({})
const uri = `${response.assets[0].uri}`
const fileContent = await FileSystem.readAsStringAsync(uri)
// Получил файл, поместил в state затем отредоктировал его в TextInput
// теперь задача сохранить этот файл на телефоне (уже отредоктированный)
// пока в поиске решения.
setFile(fileContent)
} catch (err) {
console.warn(err)
}
}