Capacitor Filesystem.readFile читает файл JSON из файловой системы Android, но добавляет символы новой строки.
До использования Capacitor Ionic V3 считывал текстовый файл JSON в файловой системе Android без проблем с использованием File.readAsText, после обновления до Ionic V4 readFileAsText больше не разрешается. Было рекомендовано использовать конденсатор. Реализованы и опробованы различные параметры FileystemsEncoding (ASCII, UTF8), но та же проблема.
sample file (JSON):
{
"id": 1,
"name": "random text",
"artistId": 1,
"artistName": "random text",
"adminId": 1,
.....
Пример службы, которая читает файл (Typescript):
this.filePath.resolveNativePath(
this.file.externalRootDirectory + this.metadataDir + '/').then(
async filePath => {
console.log('Got into filepath-> ' + filePath);
try {
const fileData = await Filesystem.readFile({
encoding: FilesystemEncoding.ASCII,
path: filePath + '/' + fileName});
console.log('Got data-> ' + fileData);
....
Ожидается: Got data-> {"id": 1,"имя": "произвольный текст", "artistId": 1, "artistName": "произвольный текст", "adminId": 1, ....
актуально: получены данные-> {"данные": "{\ n \" id \ ": 1, \ n \" name \ ": \" произвольный текст \ ", \ n \" artistId \ ": 1, \ n \" artistName \ ": \" произвольный текст\ ", \ n \" adminId \ ": 1, ....