jturl.java
来自「Java Pattern Oriented Framework (Jt) 是为了」· Java 代码 · 共 141 行
JAVA
141 行
package Jt;
import java.net.*;
import java.io.*;
/**
* Class used to handle URLs.
*/
public class JtURL extends JtObject {
private static final long serialVersionUID = 1L;
public static final String JtCLASS_NAME = JtURL.class.getName();
public static final String JtDOWNLOAD = "JtDOWNLOAD";
private String url;
InputStream stream;
BufferedInputStream bstream;
private URL someurl;
public JtURL() {
}
/**
* Specifies the URL.
* @param newUrl url
*/
public void setUrl(String newUrl) {
url = newUrl;
}
/**
* Returns the URL.
*/
public String getUrl() {
return url;
}
String download () {
//int available;
String line;
BufferedReader d = null;
URLConnection connection;
StringBuffer result = new StringBuffer();
if (url == null)
return (null);
try {
someurl = new URL (url);
connection = someurl.openConnection ();
connection.connect ();
//stream = someurl.openStream ();
stream = connection.getInputStream ();
d = new BufferedReader (new InputStreamReader (stream));
while ((line = d.readLine ()) != null) {
//System.out.println (line);
result.append (line + "\n");
}
// close streams
if (stream != null)
stream.close ();
if (d != null)
d.close ();
return (result.toString ());
} catch (Exception ex) {
handleException (ex);
return (null);
}
}
/**
* Process object messages.
* <ul>
* <li> JtDOWNLOAD - Download the URL and returns its content.
* </ul>
* @param message Jt Message
*/
public Object processMessage (Object message) {
String msgid = null;
JtMessage e = (JtMessage) message;
if (e == null)
return null;
msgid = (String) e.getMsgId ();
if (msgid == null)
return null;
// Remove this object
if (msgid.equals (JtObject.JtREMOVE)) {
return (null);
}
if (msgid.equals (JtURL.JtDOWNLOAD)) {
return (download ());
}
return (super.processMessage(message));
}
/**
* Demonstrates the messages processed by JtURL. Usage: java Jt.JtURL url
*/
public static void main (String args[]) {
JtObject main = new JtObject ();
JtMessage msg;
if (args.length < 1) {
System.err.println ("Usage: java Jt.JtURL url");
System.exit (1);
}
main.createObject (JtURL.JtCLASS_NAME, "url");
main.setValue ("url", "url", args[0]);
System.err.println ("downloading "+ args[0] + " .....");
msg = new JtMessage (JtURL.JtDOWNLOAD);
System.err.println (main.sendMessage ("url", msg));
main.removeObject ("url");
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?