Задача: скачать текст из Firebase и продемонстрировать его в log'ах.
Скачиваю текстовый файл с помощью кода:
//Скачиваие файла
// Сначала получаем доступ к Хранилищу
FirebaseStorage storage2 = FirebaseStorage.getInstance();
// Создаем ссылку на рут
StorageReference storageRef2 = storage2.getReferenceFromUrl("gs://XXX");
StorageReference TextPathReference = storageRef2.child("text/" + "2.txt");
final File TextFile = new File(getFilesDir(), "2.txt");
TextPathReference.getFile(TextFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot)
{
// Файл был скачан
Log.d("TAG_LOG", "Текстовый файл был скачан"); //Пишет в лог
File file = new File(TextFile.getAbsolutePath());
String [] loadText = Load(file);
String finalString = "";
for (int i = 0; i < loadText.length; i++)
{
finalString += loadText[i]+ System.getProperty("line.separator");
}
Log.d("TAG_LOG", "Текст в файле: " + finalString); //Пишет в лог
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Ошибка
Log.d("TAG_LOG", "Ошибка"); //Пишет в лог
}
});
где Load
:
public static String[] Load(File file)
{
FileInputStream fis = null;
try
{
fis = new FileInputStream(file);
}
catch (FileNotFoundException e) {e.printStackTrace();}
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
String test;
int anzahl=0;
try
{
while ((test=br.readLine()) != null)
{
anzahl++;
}
}
catch (IOException e) {e.printStackTrace();}
try
{
fis.getChannel().position(0);
}
catch (IOException e) {e.printStackTrace();}
String[] array = new String[anzahl];
String line;
int i = 0;
try
{
while((line=br.readLine())!=null)
{
array[i] = line;
i++;
}
}
catch (IOException e) {e.printStackTrace();}
return array;
}
В результате в Log
пишется текст (например: Текст в файле: hello world
)
Проблема: если текст в файле записан русскими буквами, то в результате в логах надпись такого типа: (например: Текст в файле: ������ ���
)
Как перевести символы "�" в русские буквы?
Попробуйте
InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
Текстовый файл нужно создавать не через блокнот, а через другой текстовый редактор. В моём случае мне помог Notepad++.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется кнопка TextButton , так же есть анимация spinAnimationНи как не могу понять, как реализовать "затухание анимации"(т
Пишу свою первую игру по типу три в ряд! В процессе создания игры сделал следующее:
Здравствуйте, есть приложение, в котором находится комната администратораТам есть таблица в которой находятся группы студентов, и есть кнопочка...
ЗдравствуйтеПодскажите как реализовать задержку между событиями касаний и с мультитачем, пожалуйста