簡體   English   中英

Android,解析來自同一 class 的對象中的文本文件時出現問題

[英]Android, problems parsing text file in objects from the same class

我創建了一個名為unoGpsSession class 實例,然后調用了uno.loadSessionFile() 該文件已正確解析,但是創建另一個名為dosGpsSession並調用dos.loadSessionFile()會導致在文件讀取和解析期間跳過許多行。 我錯過了什么嗎? 附上我項目的簡化(但經過測試)class,以及測試運行的日志這是 Class:

public class GpsSession {


MainActivity main;
Context context;



String sessionsFolder = Environment.getExternalStorageDirectory() + "/MyFolder/Sessions/";
String sessionFileName;


public GpsSession(MainActivity _main){

    main = _main;
    context = main.getApplicationContext();
}




public boolean loadSessionFile(String _fileName){


        Log.d("CHRONO", "loading " + _fileName);


    if(_fileName == null) {
        return false;}


    File file = new File(sessionsFolder + _fileName);
    if(!file.exists()){

            Log.d("CHRONO", "file don't exists, returning false");

        return false;
    }


    sessionFileName = sessionsFolder + _fileName;

    ArrayList <String>storedValues = new ArrayList<>();
    BufferedReader br = null;

    int lineNumber = 0;

    String line;

    storedValues.clear();



    //copy all the lines to arraylist


    try {
        br = new BufferedReader( new FileReader(sessionFileName));

        while((line = br.readLine()) != null)
        {
            storedValues.add(line);

                Log.d("CHRONO", "found line :" + lineNumber);


            lineNumber++;
        }
    } catch (FileNotFoundException e) {
         e.printStackTrace();
        Toast.makeText(context,context.getString(R.string.file_not_found), Toast.LENGTH_LONG).show();

    } catch (IOException e) {

        e.printStackTrace();
        Toast.makeText(context, context.getString(R.string.error_reading_file) + " IO", Toast.LENGTH_LONG).show();

    }catch (Exception e) {
        e.printStackTrace();
        Toast.makeText(context, context.getString(R.string.error_reading_file) + " E", Toast.LENGTH_LONG).show();

    }finally {

        if(br!=null)
            try {
                br.close();
            } catch(IOException e) {
                e.printStackTrace();
            }
    }


    //then parse them in array "parts"



    for(int i = 0;i < storedValues.size();i++){
        String[] parts = storedValues.get(i).split(",");

            Log.d("CHRONO", "parsing line--" + i);
            if(parts.length > 0) {
                Log.d("CHRONO", "val= " + parts[0]); }

    }


    return true;

}

這是測試運行:

GpsSession uno = new GpsSession(this);

    uno.loadSessionFile("dex.rcs");

    GpsSession dos = new GpsSession(this);

    dos.loadSessionFile("cip.rcs");

這是創建 2 個GpsClass實例並loadSessionFile()的日志示例:請注意第二個文件調用的解析行 128,有時

     loading dex.rcs
found line :0
found line :1
found line :2
found line :3
found line :4
found line :5
found line :6
found line :7
found line :8
found line :9
found line :10
found line :11
found line :12
found line :13
found line :14
found line :15
found line :16
found line :17
found line :18
found line :19
found line :20
found line :21
found line :22
found line :23
found line :24
found line :25
found line :26
found line :27
found line :28
found line :29
found line :30
found line :31
found line :32
found line :33
found line :34
found line :35
found line :36
found line :37
found line :38
found line :39
found line :40
found line :41
found line :42
found line :43
found line :44
found line :45
found line :46
found line :47
found line :48
found line :49
found line :50
found line :51
found line :52
found line :53
found line :54
found line :55
found line :56
found line :57
found line :58
found line :59
found line :60
found line :61
found line :62
found line :63
found line :64
found line :65
found line :66
found line :67
found line :68
found line :69
found line :70
found line :71
found line :72
found line :73
found line :74
found line :75
found line :76
found line :77
found line :78
found line :79
found line :80
found line :81
found line :82
found line :83
found line :84
found line :85
found line :86
found line :87
found line :88
found line :89
found line :90
found line :91
found line :92
found line :93
found line :94
found line :95
found line :96
found line :97
found line :98
found line :99
found line :100
found line :101
found line :102
found line :103
found line :104
found line :105
found line :106
found line :107
found line :108
found line :109
found line :110
found line :111
found line :112
found line :113
found line :114
found line :115
found line :116
found line :117
found line :118
found line :119
found line :120
found line :121
found line :122
found line :123
found line :124
found line :125
found line :126
found line :127
found line :128
found line :129
found line :130
found line :131
found line :132
found line :133
found line :134
found line :135
found line :136
found line :137
found line :138
found line :139
found line :140
found line :141
found line :142
found line :143
found line :144
found line :145
found line :146
found line :147
found line :148
found line :149
found line :150
found line :151
found line :152
found line :153
found line :154
found line :155
found line :156
found line :157
found line :158
found line :159
parsing line--0
val= Race session file generated with yougarage data format
parsing line--1
val= date created <<Wed Nov 13 08:04:17 GMT+01:00 2019>>
parsing line--2
val= track name <<<listino.trk>>>
parsing line--3
val= "lap"
parsing line--4
val= 1
parsing line--5
val= 1
parsing line--6
val= 1
parsing line--7
val= 1
parsing line--8
val= 1
parsing line--9
val= 1
parsing line--10
val= 1
parsing line--11
val= 1
parsing line--12
val= 1
parsing line--13
val= 1
parsing line--14
val= 1
parsing line--15
val= 1
parsing line--16
val= 1
parsing line--17
val= 1
parsing line--18
val= 1
parsing line--19
val= 1
parsing line--20
val= 1
parsing line--21
val= 1
parsing line--22
val= 1
parsing line--23
val= 1
parsing line--24
val= 1
parsing line--25
val= 1
parsing line--26
val= 1
parsing line--27
val= 1
parsing line--28
val= 1
parsing line--29
val= 1
parsing line--30
val= 1
parsing line--31
val= 1
parsing line--32
val= 1
parsing line--33
val= 1
parsing line--34
val= 1
parsing line--35
val= 1
parsing line--36
val= 1
parsing line--37
val= 1
parsing line--38
val= 1
parsing line--39
val= 1
parsing line--40
val= 1
parsing line--41
val= 1
parsing line--42
val= 1
parsing line--43
val= 1
parsing line--44
val= 1
parsing line--45
val= 1
parsing line--46
val= 1
parsing line--47
val= 1
parsing line--48
val= 1
parsing line--49
val= 1
parsing line--50
val= 1
parsing line--51
val= 1
parsing line--52
val= 1
parsing line--53
val= 1
parsing line--54
val= 1
parsing line--55
val= 1
parsing line--56
val= 1
parsing line--57
val= 1
parsing line--58
val= 1
parsing line--59
val= 1
parsing line--60
val= 1
parsing line--61
val= 1
parsing line--62
val= 1
parsing line--63
val= 1
parsing line--64
val= 1
parsing line--65
val= 1
parsing line--66
val= 1
parsing line--67
val= 1
parsing line--68
val= 1
parsing line--69
val= 1
parsing line--70
val= 1
parsing line--71
val= 1
parsing line--72
val= 1
parsing line--73
val= 1
parsing line--74
val= 1
parsing line--75
val= 1
parsing line--76
val= 1
parsing line--77
val= 1
parsing line--78
val= 1
parsing line--79
val= 1
parsing line--80
val= 1
parsing line--81
val= 1
parsing line--82
val= 1
parsing line--83
val= 1
parsing line--84
val= 1
parsing line--85
val= 1
parsing line--86
val= 1
parsing line--87
val= 1
parsing line--88
val= 1
parsing line--89
val= 1
parsing line--90
val= 1
parsing line--91
val= 1
parsing line--92
val= 1
parsing line--93
val= 1
parsing line--94
val= 1
parsing line--95
val= 1
parsing line--96
val= 2
parsing line--97
val= 2
parsing line--98
val= 2
parsing line--99
val= 2
parsing line--100
val= 2
parsing line--101
val= 2
parsing line--102
val= 2
parsing line--103
val= 2
parsing line--104
val= 2
parsing line--105
val= 2
parsing line--106
val= 2
parsing line--107
val= 2
parsing line--108
val= 2
parsing line--109
val= 2
parsing line--110
val= 2
parsing line--111
val= 2
parsing line--112
val= 2
parsing line--113
val= 2
parsing line--114
val= 2
parsing line--115
val= 2
parsing line--116
val= 2
parsing line--117
val= 2
parsing line--118
val= 2
parsing line--119
val= 2
parsing line--120
val= 2
parsing line--121
val= 2
parsing line--122
val= 2
parsing line--123
val= 2
parsing line--124
val= 2
parsing line--125
val= 2
parsing line--126
val= 2
parsing line--127
val= 2
parsing line--128
val= 2
parsing line--129
val= 2
parsing line--130
val= 2
parsing line--131
val= 2
parsing line--132
val= 2
parsing line--133
val= 2
parsing line--134
val= 2
parsing line--135
val= 2
parsing line--136
val= 2
parsing line--137
val= 2
parsing line--138
val= 2
parsing line--139
val= 2
parsing line--140
val= 2
parsing line--141
val= 2
parsing line--142
val= 2
parsing line--143
val= 2
parsing line--144
val= 2
parsing line--145
val= 2
parsing line--146
val= 2
parsing line--147
val= 2
parsing line--148
val= 2
parsing line--149
val= 2
parsing line--150
val= 2
parsing line--151
val= 2
parsing line--152
val= 2
parsing line--153
val= 2
parsing line--154
val= 2
parsing line--155
val= 2
parsing line--156
val= 2
parsing line--157
val= 2
parsing line--158
val= 2
parsing line--159
val= 2
loading cip.rcs
found line :0
found line :1
found line :2
found line :3
found line :4
found line :5
found line :6
found line :7
found line :8
found line :9
found line :10
found line :11
found line :12
found line :13
found line :14
found line :15
found line :16
found line :17
found line :18
found line :19
found line :20
found line :21
found line :22
found line :23
found line :24
found line :25
found line :26
found line :27
found line :28
found line :29
found line :30
found line :31
found line :32
found line :33
found line :34
found line :35
found line :36
found line :37
found line :38
found line :39
found line :40
found line :41
found line :42
found line :43
found line :44
found line :45
found line :46
found line :47
found line :48
found line :49
found line :50
found line :51
found line :52
found line :53
found line :54
found line :55
found line :56
found line :57
found line :58
found line :59
found line :60
found line :61
found line :62
found line :63
found line :64
found line :65
found line :66
found line :67
found line :68
found line :69
found line :70
found line :71
found line :72
found line :73
found line :74
found line :75
found line :76
found line :77
found line :78
found line :79
found line :80
found line :81
found line :82
found line :83
found line :84
found line :85
found line :86
found line :87
found line :88
found line :89
found line :90
found line :91
found line :92
found line :93
found line :94
found line :95
found line :96
found line :97
found line :98
found line :99
found line :100
found line :101
found line :102
found line :103
found line :104
found line :105
found line :106
found line :107
found line :108
found line :109
found line :110
found line :111
found line :112
found line :113
found line :114
found line :115
found line :116
found line :117
found line :118
found line :119
found line :120
found line :121
found line :122
found line :123
found line :124
found line :125
found line :126
found line :127
found line :128
found line :129
found line :130
found line :131
found line :132
found line :133
found line :134
found line :135
found line :136
found line :137
found line :138
found line :139
found line :140
found line :141
found line :142
found line :143
found line :144
found line :145
found line :146
found line :147
found line :148
found line :149
found line :150
found line :151
found line :152
found line :153
found line :154
found line :155
found line :156
found line :157
found line :158
found line :159
found line :160
found line :161
found line :162
found line :163
found line :164
found line :165
found line :166
found line :167
found line :168
found line :169
found line :170
found line :171
found line :172
found line :173
found line :174
found line :175
found line :176
found line :177
found line :178
found line :179
found line :180
found line :181
found line :182
found line :183
found line :184
found line :185
found line :186
found line :187
found line :188
found line :189
found line :190
found line :191
found line :192
found line :193
found line :194
found line :195
found line :196
found line :197
found line :198
found line :199
found line :200
found line :201
found line :202
found line :203
found line :204
found line :205
found line :206
found line :207
found line :208
found line :209
found line :210
found line :211
found line :212
found line :213
found line :214
found line :215
found line :216
found line :217
found line :218
found line :219
found line :220
found line :221
found line :222
found line :223
found line :224
found line :225
found line :226
found line :227
found line :228
found line :229
found line :230
found line :231
found line :232
found line :233
found line :234
found line :235
found line :236
found line :237
found line :238
found line :239
found line :240
found line :241
found line :242
found line :243
found line :244
found line :245
found line :246
found line :247
found line :248
found line :249
found line :250
found line :251
found line :252
found line :253
found line :254
found line :255
found line :256
found line :257
found line :258
found line :259
found line :260
found line :261
found line :262
found line :263
found line :264
found line :265
found line :266
found line :267
parsing line--0
val= Race session file generated with yougarage data format
parsing line--1
val= date created <<Mon Nov 18 05:33:37 GMT+01:00 2019>>
parsing line--2
val= track name <<<listino.trk>>>
parsing line--3
val= "lap"
parsing line--4
val= 1
parsing line--5
val= 1
parsing line--6
val= 1
parsing line--7
val= 1
parsing line--8
val= 1
parsing line--9
val= 1
parsing line--10
val= 1
parsing line--11
val= 1
parsing line--12
val= 1
parsing line--13
val= 1
parsing line--14
val= 1
parsing line--15
val= 1
parsing line--16
val= 1
parsing line--17
val= 1
parsing line--18
val= 1
parsing line--19
val= 1
parsing line--20
val= 1
parsing line--21
val= 1
parsing line--22
val= 1
parsing line--23
val= 1
parsing line--24
val= 1
parsing line--25
val= 1
parsing line--26
val= 1
parsing line--27
val= 1
parsing line--28
val= 1
parsing line--29
val= 1
parsing line--30
val= 1
parsing line--31
val= 1
parsing line--32
val= 1
parsing line--33
val= 1
parsing line--34
val= 1
parsing line--35
val= 1
parsing line--36
val= 1
parsing line--37
val= 1
parsing line--38
val= 1
parsing line--39
val= 1
parsing line--40
val= 1
parsing line--41
val= 1
parsing line--42
val= 1
parsing line--43
val= 1
parsing line--44
val= 1
parsing line--45
val= 1
parsing line--46
val= 1
parsing line--47
val= 1
parsing line--48
val= 1
parsing line--49
val= 1
parsing line--50
val= 1
parsing line--51
val= 1
parsing line--52
val= 1
parsing line--53
val= 1
parsing line--54
val= 1
parsing line--55
val= 1
parsing line--56
val= 1
parsing line--57
val= 1
parsing line--58
val= 1
parsing line--59
val= 1
parsing line--60
val= 1
parsing line--61
val= 1
parsing line--62
val= 1
parsing line--63
val= 1
parsing line--64
val= 1
parsing line--65
val= 1
parsing line--66
val= 1
parsing line--67
val= 1
parsing line--68
val= 1
parsing line--69
val= 1
parsing line--70
val= 1
parsing line--71
val= 1
parsing line--72
val= 1
parsing line--73
val= 1
parsing line--74
val= 2
parsing line--75
val= 2
parsing line--76
val= 2
parsing line--77
val= 2
parsing line--78
val= 2
parsing line--79
val= 2
parsing line--80
val= 2
parsing line--81
val= 2
parsing line--82
val= 2
parsing line--83
val= 2
parsing line--84
val= 2
parsing line--85
val= 2
parsing line--86
val= 2
parsing line--87
val= 2
parsing line--88
val= 2
parsing line--89
val= 2
parsing line--90
val= 2
parsing line--91
val= 2
parsing line--92
val= 2
parsing line--93
val= 2
parsing line--94
val= 2
parsing line--95
val= 2
parsing line--96
val= 2
parsing line--97
val= 2
parsing line--98
val= 2
parsing line--99
val= 2
parsing line--100
val= 2
parsing line--101
val= 2
parsing line--102
val= 2
parsing line--103
val= 2
parsing line--104
val= 2
parsing line--105
val= 2
parsing line--106
val= 2
parsing line--107
val= 2
parsing line--108
val= 2
parsing line--109
val= 2
parsing line--110
val= 2
parsing line--111
val= 2
parsing line--112
val= 2
parsing line--113
val= 2
parsing line--114
val= 2
parsing line--115
val= 2
parsing line--116
val= 2
parsing line--117
val= 2
parsing line--118
val= 2
parsing line--119
val= 2
parsing line--120
val= 2
parsing line--121
val= 2
parsing line--122
val= 2
parsing line--123
val= 2
parsing line--124
val= 2
parsing line--125
val= 2
parsing line--126
val= 2
parsing line--127
val= 2
parsing line--128
val= 2
val= 2
parsing line--188
parsing line--220
parsing line--240
val= 2

經過進一步調查,我發現問題與我用於測試的設備有關。 代碼已執行,但會隨機跳過 Log.d 調用。 該設備是小米紅米5 Plus。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM