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

📄 textareaio.java

📁 Ftp服务1.0
💻 JAVA
字号:
package ranab.gui;

import java.io.*;
import javax.swing.*;


/*
 * This class encapsulates <code>java.io</code>.
 * 
 * @author <a href="mailto:rana_b@yahoo.com">Rana Bhattacharyya</a>
 */
public
class TextAreaIo {
    
    /**
     * Maximum number of characters in the text area to be written.
     * Currently it is 10k.
     */
    public final static int MAX_SIZE = 10240;
    
    /**
     * Get <code>java.io.StringReader</code> object to read text area data.
     */
    public static StringReader getReader(JTextArea area)  {
        return new StringReader(area.getText());
    }
    
    /**
     * Get <code>java.io.InputStream</code> object to read text area data.
     */
    public static DataInputStream getInputStream(JTextArea area)  {
        return new DataInputStream(new ByteArrayInputStream(area.getText().getBytes()));
    }
    
    /**
     * Get <code>java.io.PrintWriter<code> object to write in the text area.
     */
    public static PrintWriter getWriter(final JTextArea area)  {
        return new PrintWriter( new Writer()  {
                public void write(char[] cbuf, int off, int len) {
                    if(area.getText().length()>MAX_SIZE) {
                        area.setText("");
                    }
                    area.append(new String(cbuf, off, len));
                }    
                
                public void close()  {
                }
                
                public void flush()  {
                }
            }
        );
    }
    
    /**
     * Get <code>java.io.PrintStream</code> to write in the text area.
     */
    public static PrintStream getOutputStream(final JTextArea area)  {
        return new PrintStream( new OutputStream()  {
                public void write(int b)  {
                    if(area.getText().length()>MAX_SIZE) {
                        area.setText("");
                    }
                    String str = new String(new byte[]  {(byte)b}); 
                    area.append(str);                
                }
                
                public void write(byte[] b, int off, int len)  {
                    if(area.getText().length()>MAX_SIZE) {
                        area.setText("");
                    }
                    String str = new String(b, off, len);
                    area.append(str);
                }
            }
        );
    }
}

⌨️ 快捷键说明

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