2

SDカードにテキストファイルがあります.Androidアプリケーションからプログラムでテキストファイルのサイズをmb単位で取得したいです。プログラムでテキストファイルのサイズをMB単位で取得するにはどうすればよいですか?

4

3 に答える 3

8

以下のコードを試してください。

public long fileSizeInKb(String fileName) {
    File file = new File(fileName);
    long fileSize = file.length();
    return fileSize / 1024;                    
}

それでも問題が発生する場合はお知らせください。

于 2013-02-11T07:21:56.760 に答える
3

Fileクラスメソッドの使用publiclonggetTotalSpace()

そしてpubliclonglength()

好き、

File file = new File("/mnt/sdcard/temp.txt");
String size = readableFileSize(file.getTotalSpace()); // file.length() alternate

そしてメソッドreadableFileSize()

public String readableFileSize(long size) {
    if(size <= 0) return "0";
    final String[] units = new String[] { "B", "KB", "MB", "GB", "TB" };
    int digitGroups = (int) (Math.log10(size)/Math.log10(1024));
    return new DecimalFormat("#,##0.#").format(size/Math.pow(1024, digitGroups)) + " " + units[digitGroups];
}
于 2013-02-11T07:23:58.277 に答える
0

ファイルへのストリームを開いてから、次のようにサイズを確認する必要があります。

File file=new File(Environment.getExternalStorageDirectory(), "lala.txt");
long size = file.length();

詳細については、こちらをお読みください:android sdkでファイルサイズを取得しますか?

于 2013-02-11T07:23:23.053 に答える