0

この File オブジェクトをバイト配列に変換する必要があります。

File directory=new File(Environment.getExternalStorageDirectory() + "");

(SDカードのフォルダとファイルの名前だけが必要です。)

私はすでにこれを試しました:

 byte[] send=null;
            FileInputStream fis;
            try {
                fis = new FileInputStream(directory);

            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            byte[] buffer = new byte[1024];
            int readBytes = 0;
            while(readBytes != -1)
            {

                    readBytes = fis.read(buffer);

                if(readBytes > 0)
                {
                    bos.write(buffer, 0, readBytes);
                }
                else 
                    break;
            }
            byte[] fileData = bos.toByteArray();
            send=fileData;

しかし、次のエラーが返されます: java.io.FileNotFoundException: /mnt/sdcard (ディレクトリです)

4

1 に答える 1

1

ディレクトリをファイルのように読み込もうとしています。そうではありません。バイト配列の内容は何になると思いますか?

ディレクトリ内のファイルのリストを検索する場合は、 を使用しますFile.listFiles()

于 2012-09-20T20:58:04.227 に答える