Hey!
- habe ein kleines Test-Programm geschrieben mit dem man eine Datei auf einen Ftp-Server schreiben kann .. man verwendet dazu die apache commons net ..
- hier der code:
Code:
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.net.ftp.FTPClient;
/**
*
* @author suso
* @category java.net
*/
public class UploadTest1 {
/**
*
* @param host
* @param user
* @param pwd
* @param f
*/
private UploadTest1(String host, String user, String pwd, File f) {
try {
/*
* open connection and print some stats
*/
FTPClient c = new FTPClient();
c.connect(host);
System.out
.println("connected to " + host + " : " + c.isConnected());
System.out.println("login : " + c.login(user, pwd));
System.out.println("");
System.out.println(c.getStatus());
System.out.println("there are " + c.list()
+ " files on the server!\n");
/*
* do upload-work here
*/
// InputStream is = new FileInputStream(f);
// c.storeFile("/test.txt", is);
FileInputStream in = new FileInputStream(f);
OutputStream out = c.storeFileStream(f.getName());
int size = (int) f.length();
byte[] buffer = new byte[1024];
int counter = 0;
double bytesUploaded = 0;
int percVal = 0;
while ((counter = in.read(buffer)) >= 0) {
bytesUploaded += counter;
out.write(buffer, 0, counter);
percVal = (int) ((bytesUploaded / size) * 100);
if (percVal == 100) {
System.out.println("upload of " + f.getName()
+ " finished!");
}
}
/*
* logout after some work
*/
System.out.println("there are now" + c.list()
+ " files on the server!\n");
System.out.println("logout : " + c.logout());
c.disconnect();
System.out
.println("connected to " + host + " : " + c.isConnected());
} catch (Exception e) {
e.printStackTrace(System.err);
}
}
/**
*
* @param args
*/
public static void main(String[] args) {
new UploadTest1("host", "username", "password", new File(
"/tmp/test.txt"));
}
}
leider stirbt das programm immer bei der zeile:
Code:
OutputStream out = c.storeFileStream(f.getName());
hat wer von euch eine ahnung warum das so is ?
lg,
Lesezeichen