Pessoal, estou tentando criar uma pasta com mac da placa, e depois jogar um arquivo dentro… mas não esta dando certo !
Segue o código…
package com.corejsf;
import static com.corejsf.NetworkInfo.getMacAddress;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.Serializable;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.model.UploadedFile;
/**
*
* @author Ribamar
*/
@ManagedBean(name = "testeMB")
@ViewScoped
public class TesteUploadManagedBean implements Serializable {
private UploadedFile file;
private String fileName = "GrFingerLicenseAgreement.txt";
public UploadedFile getFile() {
return file;
}
public void setFile(UploadedFile file) {
this.file = file;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
//Evento que vai setar o arquivo num espaço temporário pra vc poder tratar ele.
public void handleFileUpload(FileUploadEvent event) {
file = event.getFile();
}
public void importarArq() throws SocketException {
if (file != null) {
fileName = file.getFileName();
//------------------------Lê e cria qualquer formato de arquivo -----------------------------------------
byte[] byteFile = file.getContents();
try {
File dir = new File("C:/teste/"+getMacAddress());
boolean result = dir.mkdirs();
System.out.println("Criou a pasta: "+getMacAddress());
FileOutputStream fos = new FileOutputStream("C:/teste/"+fileName);
fos.write(byteFile);
fos.close();
System.out.println("Criou a Arquivo");
} catch (FileNotFoundException ex) {
Logger.getLogger(TesteUploadManagedBean.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(TesteUploadManagedBean.class.getName()).log(Level.SEVERE, null, ex);
}
try {
InetAddress address = InetAddress.getLocalHost();
NetworkInterface ni = NetworkInterface.getByInetAddress(address);
byte[] mac = ni.getHardwareAddress();
for (int i = 0; i < mac.length; i++) {
}
} catch (UnknownHostException e) {
} catch (SocketException e) {
}
}
}
}