Galera como eu faço para diminuir o tamanho do caminho escrito dentro do File?? tipo eu to fazendo assim mas vaum mudar o servidor dai n sei o caminho certo!!to fazendo assim:
fichero = new File("C:\\Documents and Settings\\julpac\\workspace\\Impressora\\WebContent\\admin\\arquivo_csv\\" + fichero.getName());
sem ter de escrever todo o caminho, como ficaria???
tipo
fichero = new File("..\\arquivo_csv\\" + fichero.getName());
???
tipo tentei como ali em cima mas n deu certo!!!
[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:
Você já tinha perguntado isso no outro post e já está respondido lá, masss…
[code]String pasta = getServletContext().getRealPath("/admin/arquivo_cv");
fichero = new File(pasta+File.separator+fichero.getName());[/code]
cara olha so ateh deu certo so q aparece este aviso aki ohhh
O numero de Arquivos é: 3
Arquivo C:\Documents and Settings\julpac\Desktop\impressoras.csv
O nome do Arquivo é impressoras.csv
Arquivo criado com sucesso
Upload Realizado
Arquivo null null
deu certo sabe so q tipo apareceu akele arquivo null null??? q e akilo???
Ué, você está mandando imprimir isso aí, vê se os valores impressos é o que você esperava mesmo!
cara olha so com este mapeamento n sei pq mas n esta funcionando!! tipo ele da esta msg :
[quote]O numero de Arquivos é: 2
Arquivo C:\Documents and Settings\julpac\Desktop\impressoras.csv
O nome do Arquivo é impressoras.csv
Upload Realizado
Arquivo null null [/quote]
da uma olhada denovo veio!!
[code]
while (i.hasNext())
{
actual = (FileItem)i.next();
String fileName = actual.getName();
out.println("<br>Arquivo " + fileName);
// determinando o local do ficheiro
File arquivo = new File(fileName);
out.println("<br>O nome do Arquivo é " + arquivo.getName());
//arquivo = new File("C:\\Documents and Settings\\julpac\\workspace\\Impressora\\WebContent\\admin\\arquivo_csv\\" + arquivo.getName());
String pasta = getServletContext().getRealPath("/admin/arquivo_csv");
arquivo = new File(pasta + File.separator + arquivo.getName());
if(!arquivo.exists()){
arquivo.createNewFile();
out.println("<br>Arquivo criado com sucesso");
}
actual.write(arquivo);
out.println("<br><font color='blue'>Upload Realizado</font>");
}
} catch(Exception e) {
out.println(e.getMessage());
}
}
%>
</body>
</html>[/code]
e tipo onde q eu mando ele escrever o null null?? ne e na ecessão??
e olha so as “/” do getRealPath saum dakele geito mesmo???
[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:
Deve ter mais algum lugar onde você manda imprimir isso!
Ahh, e não use JSP para colocar regra de negocio, não foi feito pra isso!
é eu sei q n e bom se usar isso e sim os as classes mas n sei trabalhar miuto bem com beans!!! e tipo to com o prazo esgotado era pra ter entregue ontem!!
bom olha so
o jsp ta aki!!
[code]<%@page language="java" import="java.io., org.apache.commons.fileupload., java.util." %>
<html>
<head>
<title>UPLOAD</title>
</head>
<body>
<%
boolean isMultipart = FileUpload.isMultipartContent(request);
//if(FileUpload.isMultipartContent(request)){
DiskFileUpload fu = new DiskFileUpload();
fu.setSizeMax(1024512); // 512 K
try
{
fu.setSizeThreshold(4096);
fu.setRepositoryPath("/tmp");
List fileItems = fu.parseRequest(request);
if(fileItems == null)
{
out.println("A lista é nula!!");
}
out.print("<br>O numero de Arquivos é: " + fileItems.size());
Iterator i = fileItems.iterator();
FileItem actual = null;
while (i.hasNext())
{
actual = (FileItem)i.next();
String fileName = actual.getName();
out.println("<br>Arquivo " + fileName);
// determinando o local do ficheiro
File arquivo = new File(fileName);
out.println("<br>O nome do Arquivo é " + arquivo.getName());
arquivo = new File("C:\\Documents and Settings\\julpac\\workspace\\Impressora\\WebContent\\admin\\arquivo_csv\\" + arquivo.getName());
//String pasta = getServletContext().getRealPath("/admin/arquivo_csv");
//arquivo = new File(pasta + File.separator + arquivo.getName());
if(!arquivo.exists()){
arquivo.createNewFile();
out.println("<br>Arquivo criado com sucesso");
}
actual.write(arquivo);
out.println("<br><font color='blue'>Upload Realizado</font>");
}
} catch(Exception e) {
out.println(e.getMessage());
}
//}
%>
</body>
</html>[/code]
n vejo onde ele manda escrever!!! e tipo as barras n estaum viradas???pq do metodo akele q vc passo ele n faz o upload!!!
[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:
cara desculpa tantas perguntas e tbn por eue star usando dois posts tbn,mas e q estou sob muita pressao!!! tipo
e para o cara fazer o upload e logo em seguida ja fazer o insert no banco tentei da maneira abaixo mas n funcionou ele so fez o upload mas n inseriu nada!!!
[code]<%@page language="java" import="java.io., org.apache.commons.fileupload., java.util.*" %>
<%@include file="…/conecta/acesso.jsp"%>
<html>
<head>
<title>UPLOAD</title>
</head>
<body>
<%
//boolean isMultipart = FileUpload.isMultipartContent(request);
if(FileUpload.isMultipartContent(request)){
DiskFileUpload fu = new DiskFileUpload();
fu.setSizeMax(1024*512); // 512 K
try
{
fu.setSizeThreshold(4096);
fu.setRepositoryPath("/tmp");
List fileItems = fu.parseRequest(request);
if(fileItems == null)
{
out.println("A lista é nula!!");
}
out.print("<br>O numero de Arquivos é: " + fileItems.size());
Iterator i = fileItems.iterator();
FileItem actual = null;
while (i.hasNext())
{
actual = (FileItem)i.next();
String fileName = actual.getName();
//out.println("<br>Arquivo " + fileName);
// determinando o local do ficheiro
File arquivo = new File(fileName);
//out.println("<br>O nome do Arquivo é " + arquivo.getName());
arquivo = new File("C:\\Documents and Settings\\julpac\\workspace\\Impressora\\WebContent\\admin\\arquivo_csv\\" + arquivo.getName());
//String pasta = getServletContext().getRealPath("/arquivo_csv/");
//arquivo = new File(pasta + File.separator + arquivo.getName());
if(!arquivo.exists()){
arquivo.createNewFile();
out.println("<br>Arquivo criado com sucesso");
}
actual.write(arquivo);
out.println("<br><font color='blue'>Upload Realizado</font>");
//insercao no banco!!
File arq = new File("C:\\Documents and Settings\\julpac\\workspace\\Impressora\\WebContent\\admin\\arquivo_csv\\");
BufferedReader br = new BufferedReader(new FileReader(arq));
PreparedStatement stmt= con.prepareStatement("INSERT INTO custos(cc_custo, impressoes, valImpress, copias, valCopias, mes) values (?, ?, ?, ?, ?, ?)");
while(br.ready()){
String linha = br.readLine();
String[] dados = linha.split(";");
for(int j = 0; j < dados.length; j++){
stmt.setString(j+1, dados[j]);
}
stmt.executeUpdate();
}
}
} catch(Exception e) {
//out.println(e.getMessage());
}
}
%>
<java
</body>
</html>[/code]
por favor agora so falta isso veio!!
[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:
cara assim consegui veio!!! deu certo aki!! ele faz o upload e ja insere no banco tudo corretamente!!! meu valew mesmo tu foi de muita ajuda nesta parte certamente q eu n conseguiria isso se vc n tivesse me ajudado!!! valew mesmo
e a correção ali de cima fica assim o cara so precisa setar o nome do arquivo qndo instancia o FileReader fica assim:
so oq ainda falta e ver pq qndo se chama a String pasta
ela n funciona pq vc concatena pasta + File.separator pq da utilização doi File.separator ???
eu tentei so com pasta mas igual ele n axa o caminho e n acusa q se perde tbn!! isso e bem engraçado e so como se ele n fizesse o upload!!!
mas valew veio!!! vou ficar tentando aki!!!
mas se souber o q houve no mapeamento la em avise!!
Ok e um abraço!!