Class FileWriter

java.lang.Object
org.miaixz.bus.core.io.file.FileWrapper
org.miaixz.bus.core.io.file.FileWriter
All Implemented Interfaces:
Serializable, Wrapper<File>

public class FileWriter extends FileWrapper
文件写入器
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • FileWriter

      public FileWriter(File file, Charset charset)
      构造
      Parameters:
      file - 文件
      charset - 编码,使用 Charset
    • FileWriter

      public FileWriter(String filePath, Charset charset)
      构造
      Parameters:
      filePath - 文件路径,相对路径会被转换为相对于ClassPath的路径
      charset - 编码,使用 Charset
    • FileWriter

      public FileWriter(String filePath, String charset)
      构造
      Parameters:
      filePath - 文件路径,相对路径会被转换为相对于ClassPath的路径
      charset - 编码,使用 Charset.charset(String)
    • FileWriter

      public FileWriter(File file)
      构造 编码使用 Charset.UTF_8
      Parameters:
      file - 文件
    • FileWriter

      public FileWriter(String filePath)
      构造 编码使用 Charset.UTF_8
      Parameters:
      filePath - 文件路径,相对路径会被转换为相对于ClassPath的路径
  • Method Details

    • of

      public static FileWriter of(File file, Charset charset)
      创建 FileWriter
      Parameters:
      file - 文件
      charset - 编码,使用 Charset
      Returns:
      FileWriter
    • of

      public static FileWriter of(File file)
      创建 FileWriter, 编码:Charset.UTF_8
      Parameters:
      file - 文件
      Returns:
      FileWriter
    • write

      public File write(String content, boolean isAppend) throws InternalException
      将String写入文件
      Parameters:
      content - 写入的内容
      isAppend - 是否追加
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • write

      public File write(String content) throws InternalException
      将String写入文件,覆盖模式
      Parameters:
      content - 写入的内容
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • append

      public File append(String content) throws InternalException
      将String写入文件,追加模式
      Parameters:
      content - 写入的内容
      Returns:
      写入的文件
      Throws:
      InternalException - IO异常
    • writeLines

      public <T> File writeLines(Iterable<T> list) throws InternalException
      将列表写入文件,覆盖模式
      Type Parameters:
      T - 集合元素类型
      Parameters:
      list - 列表
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • appendLines

      public <T> File appendLines(Iterable<T> list) throws InternalException
      将列表写入文件,追加模式
      Type Parameters:
      T - 集合元素类型
      Parameters:
      list - 列表
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • writeLines

      public <T> File writeLines(Iterable<T> list, boolean isAppend) throws InternalException
      将列表写入文件
      Type Parameters:
      T - 集合元素类型
      Parameters:
      list - 列表
      isAppend - 是否追加
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • writeLines

      public <T> File writeLines(Iterable<T> list, LineSeparator lineSeparator, boolean isAppend) throws InternalException
      将列表写入文件
      Type Parameters:
      T - 集合元素类型
      Parameters:
      list - 列表
      lineSeparator - 换行符枚举(Windows、Mac或Linux换行符)
      isAppend - 是否追加
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • writeMap

      public File writeMap(Map<?,?> map, String kvSeparator, boolean isAppend) throws InternalException
      将Map写入文件,每个键值对为一行,一行中键与值之间使用kvSeparator分隔
      Parameters:
      map - Map
      kvSeparator - 键和值之间的分隔符,如果传入null使用默认分隔符" = "
      isAppend - 是否追加
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • writeMap

      public File writeMap(Map<?,?> map, LineSeparator lineSeparator, String kvSeparator, boolean isAppend) throws InternalException
      将Map写入文件,每个键值对为一行,一行中键与值之间使用kvSeparator分隔
      Parameters:
      map - Map
      lineSeparator - 换行符枚举(Windows、Mac或Linux换行符)
      kvSeparator - 键和值之间的分隔符,如果传入null使用默认分隔符" = "
      isAppend - 是否追加
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • write

      public File write(byte[] data, int off, int len) throws InternalException
      写入数据到文件
      Parameters:
      data - 数据
      off - 数据开始位置
      len - 数据长度
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • append

      public File append(byte[] data, int off, int len) throws InternalException
      追加数据到文件
      Parameters:
      data - 数据
      off - 数据开始位置
      len - 数据长度
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • write

      public File write(byte[] data, int off, int len, boolean isAppend) throws InternalException
      写入数据到文件
      Parameters:
      data - 数据
      off - 数据开始位置
      len - 数据长度
      isAppend - 是否追加模式
      Returns:
      目标文件
      Throws:
      InternalException - IO异常
    • writeFromStream

      public File writeFromStream(InputStream in) throws InternalException
      将流的内容写入文件 此方法会自动关闭输入流
      Parameters:
      in - 输入流,不关闭
      Returns:
      dest
      Throws:
      InternalException - IO异常
    • writeFromStream

      public File writeFromStream(InputStream in, boolean isCloseIn) throws InternalException
      将流的内容写入文件
      Parameters:
      in - 输入流,不关闭
      isCloseIn - 是否关闭输入流
      Returns:
      dest
      Throws:
      InternalException - IO异常
    • getOutputStream

      public BufferedOutputStream getOutputStream() throws InternalException
      获得一个输出流对象
      Returns:
      输出流对象
      Throws:
      InternalException - IO异常
    • getWriter

      public BufferedWriter getWriter(boolean isAppend) throws InternalException
      获得一个带缓存的写入对象
      Parameters:
      isAppend - 是否追加
      Returns:
      BufferedReader对象
      Throws:
      InternalException - IO异常
    • getPrintWriter

      public PrintWriter getPrintWriter(boolean isAppend) throws InternalException
      获得一个打印写入对象,可以有print
      Parameters:
      isAppend - 是否追加
      Returns:
      打印对象
      Throws:
      InternalException - IO异常