您好,我目前正在开展我的最后一年项目。为此,我需要“将传感器的连续数据从文本视图记录到 .xls 工作表”。为此,我使用 Java 的 Apache POI 库,它允许您创建 Excel 工作簿和工作表等。问题是我的代码能够成功创建工作表。但是,当我尝试记录加速度计传感器的变化值(让我们仅将加速度计用于讨论)并单击按钮将其写入文件时,问题就出现了。这是我来自 android studio 项目的 .java 文件的代码。
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Workbook;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
public class MainActivity extends AppCompatActivity implements SensorEventListener, View.OnClickListener {
public static int i = 1;
public static boolean a = false;
public static String filename;
private SensorManager sensorManager;
Sensor accelerometer, gyroscope, magnetometer;
TextView ax, ay, az, gx, gy, gz, mx, my, mz;
Button btnStart, btnStop;
Workbook workbook;
//ArrayList<String> array = new ArrayList<>();
FileOutputStream fos = null;
HSSFSheet sheet;
Row row;
int rownum = 3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ax = findViewById(R.id.valueX);
ay = findViewById(R.id.valueY);
az = findViewById(R.id.valueZ);
gx = findViewById(R.id.gvalueX);
gy = findViewById(R.id.gvalueY);
gz = findViewById(R.id.gvalueZ);
mx = findViewById(R.id.mvalueX);
my = findViewById(R.id.mvalueY);
}
有人可以帮忙吗?问题区域出在 onSensorValuesChanged() 函数中。
阿波罗的战车
相关分类