提问人:Ammad 提问时间:12/22/2022 更新时间:12/22/2022 访问量:32
我的Android Studio应用程序没有在所有手机的下载文件夹中创建XL文件
My Android studio App is not creating XL File in download folder in all mobiles
问:
我创建了一个应用程序,它接受输入并生成一个 XL 文件。下面给出了一些问题:
问题 1.该文件是在内部存储的下载文件夹中创建的,可以被 droid max2 的文件管理器看到,但我的笔记本电脑确实显示该文件,除非我重新启动手机或将文件移动到另一个文件夹中。
问题 2.此文件不是由 motog9 创建的。MotoG9没有SD卡。
我的代码如下;
import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import java.io.File;
import java.io.FileOutputStream;
public class MainActivity extends AppCompatActivity {
private EditText editTextExcel;
public File filePath = new File(Environment.getExternalStorageDirectory() + "/Download/mynew2.xlsx");
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE}, PackageManager.PERMISSION_GRANTED);
editTextExcel = findViewById(R.id.editText);
}
public void buttonCreateExcel(View view){
HSSFWorkbook hssfWorkbook = new HSSFWorkbook();
HSSFSheet hssfSheet = hssfWorkbook.createSheet("Custom Sheet");
HSSFRow hssfRow = hssfSheet.createRow(0);
HSSFCell hssfCell = hssfRow.createCell(0);
hssfCell.setCellValue(editTextExcel.getText().toString());
try {
if (!filePath.exists()){
filePath.createNewFile();
}
FileOutputStream fileOutputStream= new FileOutputStream(filePath);
hssfWorkbook.write(fileOutputStream);
fileOutputStream.flush();
fileOutputStream.close();
if (fileOutputStream!=null){
fileOutputStream.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
如果我不使用下载文件夹,结果是一样的。
答: 暂无答案
评论