[Java lista] jar masolasa
Maglódszki Viktor
bocios at citromail.hu
2007. Feb. 8., Cs, 15:33:33 CET
Kimásoltam de sajnos IndexOutOfBoundsException -t kapok :(
csak átadom neki az url-t
URL u = new URL("ip/progi.jar");
saveBinaryFile(u);
----- Original Message -----
From: Stef
To: javalist at javagrund.hu
Sent: Thursday, February 08, 2007 3:05 PM
Subject: Re: [Java lista] jar masolasa
Talan ez segit, mert gondolom szoveges allomanykent jon az a fajl, nem binarisan:
Save binary file from web
import java.io.FileOutputStream ;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class MainClass {
public static void main(String args[]) {
try {
URL root = new URL("http://");
saveBinaryFile(root);
} catch (MalformedURLException e) {
System.err.println("not URL I understand.");
}
}
public static void saveBinaryFile(URL u) {
int bufferLength = 128;
try {
URLConnection uc = u.openConnection();
String ct = uc.getContentType();
int contentLength = uc.getContentLength();
if (ct.startsWith("text/") || contentLength == -1) {
System.err.println("This is not a binary file.");
return;
}
InputStream stream = uc.getInputStream();
byte[] buffer = new byte[contentLength];
int bytesread = 0;
int offset = 0;
while (bytesread >= 0) {
bytesread = stream.read(buffer, offset, bufferLength);
if (bytesread == -1)
break;
offset += bytesread;
}
if (offset != contentLength) {
System.err.println("Error: Only read " + offset + " bytes");
System.err.println("Expected " + contentLength + " bytes");
}
String theFile = u.getFile();
theFile = theFile.substring(theFile.lastIndexOf('/') + 1);
FileOutputStream fout = new FileOutputStream(theFile);
fout.write(buffer);
} catch (Exception e) {
System.err.println(e);
}
return;
}
}
Stef
2007/2/8, Maglódszki Viktor < bocios at citromail.hu>:
Sziasztok !
Szeretnék egy távoli gépről http-n lemásolni egy JAR fájlt.
Sajnos webem még nincs, de itt van nálam a kék java könyv.
2 féle képpen próbáltam.
URL url = new URL(http://IPCIM/progi.jar);
URLConnection conn = url.openConnection();
InputStream inp = conn.getInputStream();
azután 1 BufferedReader segitségévél végimentem az inputstream-en és ezt betettem egy létrehozott üres jar fájlba.
Szépen átment, de a jar-t nem tudom elinditani.
java -jar progi.jar kimenete:
invalid or corrupt jar file
egy sima TXT-vel kipróbálva pedig működik
A könyv még emlitit a JarURLConnection -t is.
Azokra mond példát, hogy egy benne lévő class-t hogyan tudok elérni, de én le szeretném másolni.
Ha simán hivatkozom a jar-ra nem megy:
URL url = new URL(http://IPCIM/progi.jar);
JarURLConnection jC = (JarURLConnection)url.openConnection();
inp = jC.getInputStream();
ez sajnos IOException-t okoz:
java.io.IOException: no entry name specified
at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:129)
lehet ezzel a JarURLConnection objektumal vagy mással az egész JAR fájlt átmásolni?
előre is köszönöm !
üdv, MV
_______________________________________________
Javalist mailing list
Javalist at javagrund.hu
http://javagrund.hu/mailman/listinfo/javalist
------------------------------------------------------------------------------
_______________________________________________
Javalist mailing list
Javalist at javagrund.hu
http://javagrund.hu/mailman/listinfo/javalist
------------------------------------------------------------------------------
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.17.25/669 - Release Date: 2007.02.04. 21:58
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20070208/4811bf6f/attachment-0001.html
További információk a(z) Javalist levelezőlistáról