Android: сравните отметку времени и добавьте в хронометр - PullRequest
0 голосов
/ 14 сентября 2018

Если я нажму кнопку btnTourStart, отметка времени будет сохранена в текстовом файле. В этом случае 1536930346 теперь я хотел вычесть эту временную метку с помощью System.currentTimeMillies();, чтобы взять этот результат и добавить его в свой chronometer (своего рода отслеживание времени). Каждый раз, когда я делаю это, я получаю безумный результат, такой как 580:50:00. (чч: мм: сс)

вот что у меня так далеко:

-читание файла-

btnLOAD.setOnClickListener(new View.OnClickListener() {
            @RequiresApi(api = Build.VERSION_CODES.N)
            @Override
            public void onClick(View v) {

                File root5 = Environment.getExternalStorageDirectory();
                File file5 = new File(root5, "TourState.txt");
                final StringBuilder text = new StringBuilder();
                try {
                    BufferedReader br = new BufferedReader(new FileReader(file5));
                    String line;
                    while ((line = br.readLine()) != null) {
                        text.append(line);
                        // text.append('\n');
                    }
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }

-строка в длинную-

long l = Long.parseLong(String.valueOf(text));

- и затем я попытался вычесть его и добавить время к своему хронометру, который не работает -

    long prevEventTime = System.currentTimeMillis();
    long l = Long.parseLong(String.valueOf(text));

    long elapsedRealtimeOff = prevEventTime - l;

chronometer1.setBase(elapsedRealtimeOff);
    chronometer1.start();
    chronometer1 = (Chronometer) findViewById(R.id.chronometer1);
    chronometer1.setFormat("HH:MM:SS");
...