Class CsvReaderBuilder

java.lang.Object
io.leandev.appfuse.csv.CsvReaderBuilder

public class CsvReaderBuilder extends Object

CSV 讀取器建構器

使用 Builder 模式提供流暢的 API 來建構 CsvReader。

使用範例

CsvReader reader = CsvReaderBuilder.of(inputStream)
    .delimiter('|')
    .quote('\'')
    .withHeader(Arrays.asList("id", "name", "price"))
    .build();
Since:
1.0
  • Constructor Details

    • CsvReaderBuilder

      public CsvReaderBuilder(InputStream inputStream, Charset charset)
      建構器建構方法
      Parameters:
      inputStream - 輸入串流
      charset - 字元編碼
    • CsvReaderBuilder

      public CsvReaderBuilder(InputStream inputStream)
      建構器建構方法(使用 UTF-8 編碼)
      Parameters:
      inputStream - 輸入串流
  • Method Details

    • of

      public static CsvReaderBuilder of(InputStream inputStream, Charset charset)
      建立建構器(指定字元編碼)
      Parameters:
      inputStream - 輸入串流
      charset - 字元編碼
      Returns:
      建構器實例
    • of

      public static CsvReaderBuilder of(InputStream inputStream)
      建立建構器(使用 UTF-8 編碼)
      Parameters:
      inputStream - 輸入串流
      Returns:
      建構器實例
    • delimiter

      public CsvReaderBuilder delimiter(char delimiter)
      設定欄位分隔符
      Parameters:
      delimiter - 分隔符字元
      Returns:
      建構器實例(支援鏈式呼叫)
    • quote

      public CsvReaderBuilder quote(char quote)
      設定引號字元
      Parameters:
      quote - 引號字元
      Returns:
      建構器實例(支援鏈式呼叫)
    • quoteEscape

      public CsvReaderBuilder quoteEscape(char quoteEscape)
      設定引號跳脫字元
      Parameters:
      quoteEscape - 跳脫字元
      Returns:
      建構器實例(支援鏈式呼叫)
    • lineSeparator

      public CsvReaderBuilder lineSeparator(String lineSeparator)
      設定換行符號
      Parameters:
      lineSeparator - 換行符號
      Returns:
      建構器實例(支援鏈式呼叫)
    • trimValues

      public CsvReaderBuilder trimValues(boolean trimValues)
      設定是否去除欄位值前後空白
      Parameters:
      trimValues - 是否去除空白
      Returns:
      建構器實例(支援鏈式呼叫)
    • emptyStringsAsNull

      public CsvReaderBuilder emptyStringsAsNull(boolean emptyStringsAsNull)
      設定是否將空字串視為 null
      Parameters:
      emptyStringsAsNull - 是否視為 null
      Returns:
      建構器實例(支援鏈式呼叫)
    • withHeader

      public CsvReaderBuilder withHeader(List<String> headers)
      手動設定 Header(適用於無 Header 的 CSV 檔案)
      Parameters:
      headers - Header 欄位列表
      Returns:
      建構器實例(支援鏈式呼叫)
    • withCharset

      public CsvReaderBuilder withCharset(Charset charset)
      設定字元編碼
      Parameters:
      charset - 字元編碼
      Returns:
      建構器實例(支援鏈式呼叫)
    • build

      public CsvReader build() throws IOException
      建構 CsvReader 實例
      Returns:
      CsvReader 實例
      Throws:
      IOException - 建構失敗