Manipular byte[] que é retornado por upload no struts
8 respostas
E
emanoeltadeu
Pessoal, estou utilizando o upload de arquivo num jsp juntamente com o FormFile do struts 1.2.7
no caso, o usuário faz o upload do arquivo .txt e eu recebo assim:
aonde o método extractPontosTXT() retornaria para mim somente o que me interessa dentro do arquivo. de acordo com a api do struts, o método getFileData() retorna os dados do arquivo na forma byte[]. como eu manipulo esse aray? alguém pode me dar ua sugestão?
que tipos de dados tu tem dentro desses bytes?
que dados são estes.
Lembre-se todo o tipo de dados é composto por um certo número de bytes, tu pode pegar os bytes correspondentes a estes dados e converter no seu tipo tratado novamente…
E
emanoeltadeu
os dados do arquivo .txt. do tipo 2508677 1 170 2312 por exemplo. como eu fria o tratamento? como fazer isso?
nbluis
Hummm…
se são do teu arquivo, certamente são em ASCII.
logo du pode fazer
String s = new String(getFileData())
Pois o objeto string tem um construtor recebendo um array de bytes…
dai tu vai ter uma string para tratamento…
valeu…
E
emanoeltadeu
eu coloquei o array de bytes na variavel data[] e fiz:
String fileStrg = new String (data[]);
mas ele diz q o construtor String(byte) é indefinido…
nbluis
você tem que fazer
String s = new String(data);
sem os colchetes…
assim ele entende dois erros de compilação.
uma que tu quer passar uma posicao do array para o construtor.
e outra que tu não especificou qual a posicao.;
não existe construtor na classe string recebendo 1 byte.
valeu,
E
emanoeltadeu
continua o mesmo erro…
nbluis
Coloque sua parte do codigo deste tratamento para darmos uma olhada…
OBS: não esqueça das tags code
E
emanoeltadeu
ainda não iniciei o tratamento justamente pq não consigo fazer a conversão. as olha só:
a dificuldade está na implementação do método extractPontosTXT, pois só consigo colocar parâmetro nele como byte[] fornecido pelo método getFileData(). e não dá pra manipular o array byte[].