androidでxls形式のデータを印刷したい
androidでxls形式のデータを印刷できるようなアプリを自作したいと思っているのですが、中々上手く行きません。
印刷はとりあえずxlsファイルをgoogleクラウドプリントに送りたいのですがエラーが出ます。
アドバイスいただけますか。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
InputStream f = this.getAssets().open("seisansyo.xls"); // 既存のExcelファイル名を指定
Workbook wb = new HSSFWorkbook(f);
f.close(); //ここで入力ストリームを閉じる
FileOutputStream fileOut = new FileOutputStream(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/date/" + "workbook2.xls");
// 編集したいシート、列、セルを指定
Sheet s =wb.getSheetAt(0);
Row r = s.getRow(1);
Cell c = r.getCell(1);
// この場合B2セルに「あいう」をセット
c.setCellValue("あいう");
c.setCellType(Cell.CELL_TYPE_STRING);
wb.write(fileOut);
fileOut.close();
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/date/" + "workbook2.xls");
String mimeType = "application/vnd.ms-excel";
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.setType(mimeType);
intent.putExtra(Intent.EXTRA_TITLE, file.getName());
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getPath()));
intent.setPackage("com.google.android.apps.cloudprint");
startActivity(intent);
} catch (IOException oops) {
Log.e("error", oops.toString());
oops.printStackTrace();
}
}