From 9b4433fddf5b401edb0aace8a404ac733b122702 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期四, 03 四月 2025 14:35:02 +0800
Subject: [PATCH] 添加非密字段显示

---
 Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/utils/IoUtil.java |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 109 insertions(+), 0 deletions(-)

diff --git a/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/utils/IoUtil.java b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/utils/IoUtil.java
new file mode 100644
index 0000000..f3dc7b0
--- /dev/null
+++ b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/utils/IoUtil.java
@@ -0,0 +1,109 @@
+/*
+ *      Copyright (c) 2018-2028, DreamLu All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: DreamLu 鍗㈡槬姊� (596392912@qq.com)
+ */
+
+package org.springblade.core.tool.utils;
+
+import org.springframework.lang.Nullable;
+
+import java.io.*;
+import java.nio.charset.Charset;
+
+/**
+ * 娴佸伐鍏风被
+ *
+ * @author L.cm
+ */
+public class IoUtil extends org.springframework.util.StreamUtils {
+
+	/**
+	 * closeQuietly
+	 *
+	 * @param closeable 鑷姩鍏抽棴
+	 */
+	public static void closeQuietly(@Nullable Closeable closeable) {
+		if (closeable == null) {
+			return;
+		}
+		if (closeable instanceof Flushable) {
+			try {
+				((Flushable) closeable).flush();
+			} catch (IOException ignored) {
+				// ignore
+			}
+		}
+		try {
+			closeable.close();
+		} catch (IOException ignored) {
+			// ignore
+		}
+	}
+
+	/**
+	 * InputStream to String utf-8
+	 *
+	 * @param input the <code>InputStream</code> to read from
+	 * @return the requested String
+	 */
+	public static String readToString(InputStream input) {
+		return readToString(input, Charsets.UTF_8);
+	}
+
+	/**
+	 * InputStream to String
+	 *
+	 * @param input   the <code>InputStream</code> to read from
+	 * @param charset the <code>Charset</code>
+	 * @return the requested String
+	 */
+	public static String readToString(@Nullable InputStream input, Charset charset) {
+		try {
+			return IoUtil.copyToString(input, charset);
+		} catch (IOException e) {
+			throw Exceptions.unchecked(e);
+		} finally {
+			IoUtil.closeQuietly(input);
+		}
+	}
+
+	public static byte[] readToByteArray(@Nullable InputStream input) {
+		try {
+			return IoUtil.copyToByteArray(input);
+		} catch (IOException e) {
+			throw Exceptions.unchecked(e);
+		} finally {
+			IoUtil.closeQuietly(input);
+		}
+	}
+
+	/**
+	 * Writes chars from a <code>String</code> to bytes on an
+	 * <code>OutputStream</code> using the specified character encoding.
+	 * <p>
+	 * This method uses {@link String#getBytes(String)}.
+	 * </p>
+	 * @param data     the <code>String</code> to write, null ignored
+	 * @param output   the <code>OutputStream</code> to write to
+	 * @param encoding the encoding to use, null means platform default
+	 * @throws NullPointerException if output is null
+	 * @throws IOException          if an I/O error occurs
+	 */
+	public static void write(@Nullable final String data, final OutputStream output, final Charset encoding) throws IOException {
+		if (data != null) {
+			output.write(data.getBytes(encoding));
+		}
+	}
+}

--
Gitblit v1.9.3