本文介绍了如何将字符串值转换成int值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的code并没有显示日期,如果一天不串数字。如果我用数字替换值2,3,4一样正常工作,在logcat中所示,否则code抛出一个错误:

java.util.IllegalFormatConversionException:D是java.lang.String中不兼容

这是code:

字符串completedate;
字符串值;
mYear = mCalendar.get(Calendar.YEAR);
mMonth = mCalendar.get(的Calendar.MONTH)+ 1;案例R.id.e02:    。值= e02.getText()的toString();    completedate =
        的String.format(%02D,值)
        +的String.format(%02D,mMonth)
        + mYear;

下面是我的logcat误差

十一月8日至15日:45:11.301:E / AndroidRuntime(1493):致命异常:主要
 11月8日至15日:45:11.301:E / AndroidRuntime(1493):
 java.util.IllegalFormatConversionException:D是java.lang.String中不兼容
 11月8日至15日:45:11.301:E / AndroidRuntime(1493):在
 java.util.Formatter中的$ Transformer.badArgumentType(Formatter.java:1452)
 11月8日至15日:45:11.301:E / AndroidRuntime(1493):在
 java.util.Formatter中的$ Transformer.transformFromInteger(Formatter.java:1683)
 11月8日至15日:45:11.301:E / AndroidRuntime(1493):在
 java.util.Formatter中的$ Transformer.transform(Formatter.java:1410)
 ...


解决方案

这个转换:

  int值=的Integer.parseInt(字符串);

如果字符串为null,则检查:

 如果(string.length减()>!0 || string.isEmpty()){  int值=的Integer.parseInt(字符串);}其他{
 //字符串为空......
}

My code does not show date if day is string not numeric. If I replace the value with a digit like 2,3,4 it works fine, otherwise code throws an error as shown on logcat:

java.util.IllegalFormatConversionException: d is incompatible with java.lang.String

This is the code:

String completedate;
String value;
mYear = mCalendar.get(Calendar.YEAR);
mMonth = mCalendar.get(Calendar.MONTH) + 1;

case R.id.e02:

    value = e02.getText().toString();

    completedate =
        String.format("%02d", value)
        + String.format("%02d", mMonth)
        + mYear;

Below is my logcat error

 08-15 11:45:11.301: E/AndroidRuntime(1493): FATAL EXCEPTION: main
 08-15 11:45:11.301: E/AndroidRuntime(1493):
 java.util.IllegalFormatConversionException: d is incompatible with java.lang.String
 08-15 11:45:11.301: E/AndroidRuntime(1493):    at
 java.util.Formatter$Transformer.badArgumentType(Formatter.java:1452)
 08-15 11:45:11.301: E/AndroidRuntime(1493):    at
 java.util.Formatter$Transformer.transformFromInteger(Formatter.java:1683)
 08-15 11:45:11.301: E/AndroidRuntime(1493):    at
 java.util.Formatter$Transformer.transform(Formatter.java:1410)
 ...
解决方案

Convert by this:

int value =Integer.parseInt(string);

if String is null then check:

if(string.length()>0 || !string.isEmpty()){

  int value =Integer.parseInt(string);

} else{
 // string is Null......
}

这篇关于如何将字符串值转换成int值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-28 20:06