2 ssummeraw ssummeraw 于 2013.05.31 16:46 提问

android 开发中文件名错误
   Integer val = myReceipt.receiptId ;
            String fileName = "image" + "_" + title.getText().toString()+"_" + val.toString(); 
            photo = this.createTemporaryFile(fileName, ".jpg");
            intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
            uriOfPhoto = Uri.fromFile(photo);
            startActivityForResult(intent, RESULT_CAMERA_SELECT);
          }
        }


    private File createTemporaryFile(String part, String ext) throws Exception
    {
        File tempDir = new File (Environment.getExternalStorageDirectory() + "/Catch All Keeper/Receipts");
        if(!tempDir.exists())
        {
            tempDir.mkdir();
        }
        tempDir.canWrite();
        return File.createTempFile(part, ext, tempDir);
    }
});

我用上面的代码应该给出文件名image_title_val,但是却给出一个奇怪的名字image_title_(some random numbers).jpg。

为什么出现这个问题?

2个回答

hxn_217
hxn_217   2013.06.03 11:12
已采纳

你使用 File.createTempFile 来获取一个唯一标识符,那个函数指定了随机数。
传入参数部分的文件名字符串用做一个前缀来生成临时文件名称。

franzhong
franzhong   2013.05.31 18:32

输出看看 val.toString()的值就知道了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!