Java Android:唯一的ID生成器和区域设置
我有一个如下函数为我的应用程序生成唯一IDJava Android:唯一的ID生成器和区域设置,java,android,calendar,Java,Android,Calendar,我有一个如下函数为我的应用程序生成唯一ID public static String now(String dateFormat) { Calendar cal = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat(dateFormat); return sdf.format(cal.getTime()); } 我使用以下方法调用该函数 incident_id = IncidentId
public static String now(String dateFormat) {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
return sdf.format(cal.getTime());
}
我使用以下方法调用该函数
incident_id = IncidentIdGenerator.now("ddMMyyyyHHmmss");
更改区域设置时出现问题。例如,如果我将区域设置更改为Arab,将以一些阿拉伯字母生成唯一ID。我将调用的web服务不支持阿拉伯字母
在创建唯一ID时,我必须坚持使用Locale.US。我如何才能做到这一点??我试了以下方法,但效果不太好
Calendar cal = Calendar.getInstance(Locale.US);
提前谢谢你的时间 您还必须使用
SimpleDateFormat
指定Locale.US
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat, Locale.US);
您还必须使用
SimpleDataFormat
指定Locale.US
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat, Locale.US);
除非您一心想使用时间和区域设置在应用程序中生成唯一的ID,否则这里是一个替代方案
String uniqueId = UUID.randomUUID().toString();
生成并存储这是一个SharedReference,您可以随时使用它。除非您一心想在应用程序中使用时间和区域设置来生成唯一的ID,这里是另一个选择
String uniqueId = UUID.randomUUID().toString();
生成并存储这是一个SharedReference,您可以随时使用它