2013-06-03 4 views
1

Я пытаюсь прочитать файл конфигурации, и я хочу использовать это значение свойства в некоторых алгебраических операциях. Поэтому мне нужно преобразовать строку, возвращаемую prop.getProperty(String str) в целое число.Как преобразовать строку, возвращаемую prop.getProperty() в Integer с помощью java

Я попытался преобразовать его с помощью:

1.)

Integer value = null; 
String string = getProperty(key); 
if (string != null) 
value = new Integer(string); 
return value; 

2.)

String noofdivs = prop.getProperty("NO_OF_INITIAL_DIVS"); 
Integer noOfInitialDivs = Integer.valueOf(noofdivs); 

3.)

String xyz = prop.getProperty("NO_OF_LINES_IN_A_DIV"); 
Integer noOfLinesInDiv = Integer.getInteger(xyz); 

, но ни один из них не является за работой.

Может ли кто-нибудь помочь мне с этим?

+0

Ваша собственность там, и это номер? –

+0

Да, он присутствует в файле свойств и является числом. все строки в файле извлекаются должным образом, но при преобразовании в целое число с помощью любого из методов сообщается о том же исключении – manisha

+0

делиться данными об исключении – harsh

ответ

2

int value = Integer.parseInt(string);

Вы можете проверить на NumberFormatException, чтобы увидеть, если он правильно разобран.

+0

попробовал это, но такое же сообщение было отправлено – manisha

+0

Тогда ваше свойство не Integer, как оно выглядит? – Djon

+0

Это мои свойства: БРАУЗЕРА = ХРОМИРОВАННЫЕ log_file_path = C:/затмение/TESTENV LOG_FILE_NAME_PREFIX = войти LOG_FILE_NAME_SUFFIX = .txt LOG_PATTERN =% D {дд MMM YYYY HH: мм: сс}% -5p% F -% M():% L -% m% n LOG_FILE_DATE_PATTERN = ddMMyyyy_HHmmss NO_OF_LINES_IN_A_DIV = 50; NO_OF_INITIAL_DIVS = 3; – manisha

1

Даже если это может быть немного переоценено здесь, вы можете использовать Apache Commons Configuration, чтобы избежать преобразования свойств. У рамки также есть преимущество бросить ConversionException, если свойство, которое вы читаете, не соответствует ожидаемому типу.

Смежные вопросы