Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2015, 21:13   #1
Dark~VIN
Пользователь
 
Аватар для Dark~VIN
 
Регистрация: 30.04.2012
Сообщений: 21
По умолчанию Работа с YAML форматом

Добрый день.
Пользуюсь Eclipse, тестирую на своем HTC.

Есть шаблон
Код:
public class yamlMaket {
	public String name;
	public Integer[] array;
}
По этому шаблону нужно создать YAML файл, потом его считать.

Запись успешная:
Код:
// имя файла
String path = Environment.getExternalStorageDirectory().getPath() + "/file.yml";

// создаю свой объект
yamlMaket ym = new yamlMaket();

// заполняю поле имени
ym.name = "Name";

//заполняю поле массив
Integer[] array = {1, 2, 3, 4, 5};
ym.array = array; 

// создаю элемент YAML
Yaml yaml = new Yaml();

FileWriter output = null;
try {
	output = new FileWriter(path);

	// пишу свой объект в файл
	yaml.dump(ym, output);

} catch (IOException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

try {
	output.close();
} catch (IOException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}
Результат:
Код:
!!d.swan.yamltest.yamlMaket
array: [1, 2, 3, 4, 5]
name: Name
А вот прочесть удается только String. Integer выдает что-то похожее на указатель
Код:
// имя файла
String path = Environment.getExternalStorageDirectory().getPath() + "/file.yml";

// создаю элемент YAML
Yaml yaml = new Yaml();

FileReader reader = null;
try {
	reader = new FileReader(path);

	// загружаю в свой объект
	yamlMaket ym =(yamlMaket)yaml.load(reader);

	// пишу резлультат в TextView
	String s = ym.name.toString(); 	// результат "Name"

	// String s = ym.array.toString();	// результат "[Ljava.lang.Integer;@4132aa00"
	tvArr1.setText(s);
} catch (FileNotFoundException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}
			
try {
	reader.close();
} catch (IOException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}
Использую библиотеку snakeyaml_1.10
Как правильно считывать (или записывать) массивы с YAML?
Завтра будет.
Лучше.
Dark~VIN вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с Fb2 форматом sergio11 WPF, UWP, WinRT, XAML 10 02.12.2016 13:50
Delphi. Работа с форматом XML Pol1212 Общие вопросы Delphi 10 19.04.2015 22:32
Работа с полустатическим форматом данных. Pascal GamBitFRK Помощь студентам 0 09.01.2013 21:42
Работа с форматом ISO Lier Общие вопросы Delphi 5 13.05.2012 20:13
Работа с форматом Epub (Делфи) mari_styuart Помощь студентам 0 25.03.2011 11:45