簡體   English   中英

Java長空字符串

[英]Java long string of nulls

我在while循環內從藍牙讀取bytes []來接收字節,然后將它們寫入輸出文件,但是我看到在每行中都添加了很長的null字符串,為什么會這樣? 我該如何解決?

    byte[] buffer = new byte[1024];
    String message;
    try {
    do {
    input.read(buffer);
    fil.write(buffer);
    fil.flush();
    }while(//some condition);
    }

這段代碼寫在一個線程內。 輸出文件:值+“ null長字符串”

更新:寫在文件上的數據在發送時未格式化,如何在發送時查看它們?

您假設read(buffer);始終讀取1024個字節,而該字節最多可以讀取1024個字節。 它將返回讀取的字節數,因此將代碼更改為

int bytes = input.read(buffer);
fil.write(buffer, 0, bytes);

您可以執行以下操作:

    int count;
    while ((count = in.read(buffer)) > 0) {
        fil.write(buffer , 0, count);
    }

暫無
暫無

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

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