java - 如何将带日期的文件存入SD卡?

标签 java android android-date

在我的应用程序中,我想将文件存储到 SD 卡中。
我想要的是,当应用程序存储此文件时,将现在的日期添加为文件名,为此我编写了以下代码。

但是当用户将设备语言更改为 UTF-8 语言(例如:Farsi - Arabic , ...)时,文件以UTF-8字符存储!

例如:使用此名称存储文件:COM_MyVideo_2020-1-5
但我想要这个名称的商店:COM_MyVideo_2020-1-5

我的代码:

private String getFileSaveName() {
    videoName = GoodPrefs.getInstance().getString(ConstKeys.TEST_NAME, "MyApp");
    videoName = videoName + "-" + GoodPrefs.getInstance().getInt(ConstKeys.TEST_ID, 0) + "-";
    String filename = "yyyyMMdd_HHmmss";
    //Required to handle preference change
    filename = filename.replace("hh", "HH");
    String prefix = "COM_" + videoName;
    Date today = Calendar.getInstance().getTime();
    SimpleDateFormat formatter = new SimpleDateFormat(filename);
    return prefix + formatter.format(today);
}

我该如何解决?

最佳答案

试试他的,首先创建当前日期时间作为时间戳,然后将时间戳转换为本地英文日期,并根据需要格式化。

 Date date= new Date();

 long time = date.getTime();

 Calendar cal = Calendar.getInstance(Locale.ENGLISH);
    cal.setTimeInMillis(time * 1000);
    String date = DateFormat.format("dd-MM-yyyy", cal).toString();

关于java - 如何将带日期的文件存入SD卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59729174/

相关文章:

Java TreeMap Nested ,clear 删除所有数据,而 new 则不

java - JTable 中没有标题

android - 如何从android中的expandablelistview获取onChildClick值?

android - 在 android 中将 quickblox 与 Proguard 集成

Xamarin Forms 中的自定义页面渲染器未扩充 Android 布局页面

java - 对检索到的数组执行 for 循环

java - Android资源未找到异常?

java - 将 Parse.com 中的日期设置为与系统日期相同的类型

android - 如何仅从 DateUtils 获取年份

android - android.text.format.DateFormat.format 方法的正确使用方法是什么