⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ioutils.java

📁 Wicket一个开发Java Web应用程序框架。它使得开发web应用程序变得容易而轻松。 Wicket利用一个POJO data beans组件使得它可以与任何持久层技术相结合。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	 * This method uses {@link String#String(char[])} and {@link String#getBytes()}.	 * 	 * @param data	 *            the char array to write, do not modify during output, null ignored	 * @param output	 *            the <code>OutputStream</code> to write to	 * @throws NullPointerException	 *             if output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void write(char[] data, OutputStream output) throws IOException	{		if (data != null)		{			output.write(new String(data).getBytes());		}	}	/**	 * Writes chars from a <code>char[]</code> to bytes on an <code>OutputStream</code> using	 * the specified character encoding.	 * <p>	 * Character encoding names can be found at <a	 * href="http://www.iana.org/assignments/character-sets">IANA</a>.	 * <p>	 * This method uses {@link String#String(char[])} and {@link String#getBytes(String)}.	 * 	 * @param data	 *            the char array to write, do not modify during output, 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	 * @since 1.1	 */	public static void write(char[] data, OutputStream output, String encoding) throws IOException	{		if (data != null)		{			if (encoding == null)			{				write(data, output);			}			else			{				output.write(new String(data).getBytes(encoding));			}		}	}	// write String	// -----------------------------------------------------------------------	/**	 * Writes chars from a <code>String</code> to a <code>Writer</code>.	 * 	 * @param data	 *            the <code>String</code> to write, null ignored	 * @param output	 *            the <code>Writer</code> to write to	 * @throws NullPointerException	 *             if output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void write(String data, Writer output) throws IOException	{		if (data != null)		{			output.write(data);		}	}	/**	 * Writes chars from a <code>String</code> to bytes on an <code>OutputStream</code> using	 * the default character encoding of the platform.	 * <p>	 * This method uses {@link String#getBytes()}.	 * 	 * @param data	 *            the <code>String</code> to write, null ignored	 * @param output	 *            the <code>OutputStream</code> to write to	 * @throws NullPointerException	 *             if output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void write(String data, OutputStream output) throws IOException	{		if (data != null)		{			output.write(data.getBytes());		}	}	/**	 * Writes chars from a <code>String</code> to bytes on an <code>OutputStream</code> using	 * the specified character encoding.	 * <p>	 * Character encoding names can be found at <a	 * href="http://www.iana.org/assignments/character-sets">IANA</a>.	 * <p>	 * This method uses {@link String#getBytes(String)}.	 * 	 * @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	 * @since 1.1	 */	public static void write(String data, OutputStream output, String encoding) throws IOException	{		if (data != null)		{			if (encoding == null)			{				write(data, output);			}			else			{				output.write(data.getBytes(encoding));			}		}	}	// write AppendingStringBuffer	// -----------------------------------------------------------------------	/**	 * Writes chars from a <code>AppendingStringBuffer</code> to a <code>Writer</code>.	 * 	 * @param data	 *            the <code>AppendingStringBuffer</code> to write, null ignored	 * @param output	 *            the <code>Writer</code> to write to	 * @throws NullPointerException	 *             if output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void write(StringBuffer data, Writer output) throws IOException	{		if (data != null)		{			output.write(data.toString());		}	}	/**	 * Writes chars from a <code>AppendingStringBuffer</code> to bytes on an	 * <code>OutputStream</code> using the default character encoding of the platform.	 * <p>	 * This method uses {@link String#getBytes()}.	 * 	 * @param data	 *            the <code>AppendingStringBuffer</code> to write, null ignored	 * @param output	 *            the <code>OutputStream</code> to write to	 * @throws NullPointerException	 *             if output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void write(StringBuffer data, OutputStream output) throws IOException	{		if (data != null)		{			output.write(data.toString().getBytes());		}	}	/**	 * Writes chars from a <code>AppendingStringBuffer</code> to bytes on an	 * <code>OutputStream</code> using the specified character encoding.	 * <p>	 * Character encoding names can be found at <a	 * href="http://www.iana.org/assignments/character-sets">IANA</a>.	 * <p>	 * This method uses {@link String#getBytes(String)}.	 * 	 * @param data	 *            the <code>AppendingStringBuffer</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	 * @since 1.1	 */	public static void write(StringBuffer data, OutputStream output, String encoding)			throws IOException	{		if (data != null)		{			if (encoding == null)			{				write(data, output);			}			else			{				output.write(data.toString().getBytes(encoding));			}		}	}	// copy from InputStream	// -----------------------------------------------------------------------	/**	 * Copy bytes from an <code>InputStream</code> to an <code>OutputStream</code>.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedInputStream</code>.	 * 	 * @param input	 *            the <code>InputStream</code> to read from	 * @param output	 *            the <code>OutputStream</code> to write to	 * @return the number of bytes copied	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static int copy(InputStream input, OutputStream output) throws IOException	{		byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];		int count = 0;		int n = 0;		while (-1 != (n = input.read(buffer)))		{			output.write(buffer, 0, n);			count += n;		}		return count;	}	/**	 * Copy bytes from an <code>InputStream</code> to chars on a <code>Writer</code> using the	 * default character encoding of the platform.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedInputStream</code>.	 * <p>	 * This method uses {@link InputStreamReader}.	 * 	 * @param input	 *            the <code>InputStream</code> to read from	 * @param output	 *            the <code>Writer</code> to write to	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void copy(InputStream input, Writer output) throws IOException	{		InputStreamReader in = new InputStreamReader(input);		copy(in, output);	}	/**	 * Copy bytes from an <code>InputStream</code> to chars on a <code>Writer</code> using the	 * specified character encoding.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedInputStream</code>.	 * <p>	 * Character encoding names can be found at <a	 * href="http://www.iana.org/assignments/character-sets">IANA</a>.	 * <p>	 * This method uses {@link InputStreamReader}.	 * 	 * @param input	 *            the <code>InputStream</code> to read from	 * @param output	 *            the <code>Writer</code> to write to	 * @param encoding	 *            the encoding to use, null means platform default	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void copy(InputStream input, Writer output, String encoding) throws IOException	{		if (encoding == null)		{			copy(input, output);		}		else		{			InputStreamReader in = new InputStreamReader(input, encoding);			copy(in, output);		}	}	// copy from Reader	// -----------------------------------------------------------------------	/**	 * Copy chars from a <code>Reader</code> to a <code>Writer</code>.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedReader</code>.	 * 	 * @param input	 *            the <code>Reader</code> to read from	 * @param output	 *            the <code>Writer</code> to write to	 * @return the number of characters copied	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static int copy(Reader input, Writer output) throws IOException	{		char[] buffer = new char[DEFAULT_BUFFER_SIZE];		int count = 0;		int n = 0;		while (-1 != (n = input.read(buffer)))		{			output.write(buffer, 0, n);			count += n;		}		return count;	}	/**	 * Copy chars from a <code>Reader</code> to bytes on an <code>OutputStream</code> using the	 * default character encoding of the platform, and calling flush.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedReader</code>.	 * <p>	 * Due to the implementation of OutputStreamWriter, this method performs a flush.	 * <p>	 * This method uses {@link OutputStreamWriter}.	 * 	 * @param input	 *            the <code>Reader</code> to read from	 * @param output	 *            the <code>OutputStream</code> to write to	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void copy(Reader input, OutputStream output) throws IOException	{		OutputStreamWriter out = new OutputStreamWriter(output);		copy(input, out);		out.flush();	}	/**	 * Copy chars from a <code>Reader</code> to bytes on an <code>OutputStream</code> using the	 * specified character encoding, and calling flush.	 * <p>	 * This method buffers the input internally, so there is no need to use a	 * <code>BufferedReader</code>.	 * <p>	 * Character encoding names can be found at <a	 * href="http://www.iana.org/assignments/character-sets">IANA</a>.	 * <p>	 * Due to the implementation of OutputStreamWriter, this method performs a flush.	 * <p>	 * This method uses {@link OutputStreamWriter}.	 * 	 * @param input	 *            the <code>Reader</code> to read from	 * @param output	 *            the <code>OutputStream</code> to write to	 * @param encoding	 *            the encoding to use, null means platform default	 * @throws NullPointerException	 *             if the input or output is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static void copy(Reader input, OutputStream output, String encoding) throws IOException	{		if (encoding == null)		{			copy(input, output);		}		else		{			OutputStreamWriter out = new OutputStreamWriter(output, encoding);			copy(input, out);			out.flush();		}	}	// content equals	// -----------------------------------------------------------------------	/**	 * Compare the contents of two Streams to determine if they are equal or not.	 * <p>	 * This method buffers the input internally using <code>BufferedInputStream</code> if they are	 * not already buffered.	 * 	 * @param input1	 *            the first stream	 * @param input2	 *            the second stream	 * @return true if the content of the streams are equal or they both don't exist, false	 *         otherwise	 * @throws NullPointerException	 *             if either input is null	 * @throws IOException	 *             if an I/O error occurs	 */	public static boolean contentEquals(InputStream input1, InputStream input2) throws IOException	{		if (!(input1 instanceof BufferedInputStream))		{			input1 = new BufferedInputStream(input1);		}		if (!(input2 instanceof BufferedInputStream))		{			input2 = new BufferedInputStream(input2);		}		int ch = input1.read();		while (-1 != ch)		{			int ch2 = input2.read();			if (ch != ch2)			{				return false;			}			ch = input1.read();		}		int ch2 = input2.read();		return (ch2 == -1);	}	/**	 * Compare the contents of two Readers to determine if they are equal or not.	 * <p>	 * This method buffers the input internally using <code>BufferedReader</code> if they are not	 * already buffered.	 * 	 * @param input1	 *            the first reader	 * @param input2	 *            the second reader	 * @return true if the content of the readers are equal or they both don't exist, false	 *         otherwise	 * @throws NullPointerException	 *             if either input is null	 * @throws IOException	 *             if an I/O error occurs	 * @since 1.1	 */	public static boolean contentEquals(Reader input1, Reader input2) throws IOException	{		if (!(input1 instanceof BufferedReader))		{			input1 = new BufferedReader(input1);		}		if (!(input2 instanceof BufferedReader))		{			input2 = new BufferedReader(input2);		}		int ch = input1.read();		while (-1 != ch)		{			int ch2 = input2.read();			if (ch != ch2)			{				return false;			}			ch = input1.read();		}		int ch2 = input2.read();		return (ch2 == -1);	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -