java通過內存流去掉多行文本中的空行

對於多行文本,你直接通過replace,replaceAll是不能將空行刪除的,你需要遍歷這些行,對每行文本進行操作,最後把返回新的文本纔行。

    public static String removeMultiRowBlank(String msg) {
        InputStream is = new ByteArrayInputStream(msg.getBytes());
        BufferedReader br = null;
        String tmp;
        StringBuilder stringBuilder = new StringBuilder();
        int i = 0;
        try {

            br = new BufferedReader(new InputStreamReader(is, "utf-8"));
            while ((tmp = br.readLine()) != null) {
                if (StringUtils.isBlank(tmp)) ;
                else {
                    stringBuilder.append(tmp + "\n");
                    i++;
                    System.out.println(i);
                }
            }
            is.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return stringBuilder.toString();
    }


通過上面的方法,將把上圖中第一行(空行)刪除,並返回處理後的字符串。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章