파일 전송하고 받는 코드입니다
눈솔
파일 수신송신의 개념을 잡고자 간단한 코드를 돌려보는데요
파일이 저장될때 0바이트로 저장됩니다.
즉, 소스가 제대로된게 아니라는 거겠죠 ㅠㅠ?
원인을 찾고자 중간중간 프린트문을 넣어서 확인해서
바이트단위로 쓰는 와일문쪽으로는 들어가지도 않는다는걸 알았습니다
이유가 뭘까요 ㅠㅠ?
================================================================================================[파일 보내기]
import java.net.*;
import java.io.*;
public class FileSend {
public static void main(String args[]) {
int poNum = 5008;
String filePath = C:/Java/MyProject/;
String fileName = aaa.mp3;
try {
ServerSocket ss = new ServerSocket(poNum);
System.out.println(서버소켓 생성완료);
Socket sss = ss.accept();
System.out.println(소켓 +sss+ 에 연결됨);
OutputStream os = sss.getOutputStream();
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
System.out.println(파일 : + filePath + fileName);
bw.write(fileName + \n);
bw.flush();
DataInputStream dis = new DataInputStream(new FileInputStream(new File(filePath + fileName)));
DataOutputStream dos = new DataOutputStream(os);
int i = dis.read();
System.out.println(i); // 이부분에서 i 값이 -1 이 나와버려서 이 밑에 와일문이 실행되지 않습니다
int i = 0;
while( (i = dis.read()) = -1 ) {
dos.writeByte(i);
dos.flush();
}
System.out.println(파일 송신 완료!!);
dis.close();
dos.close();
sss.close();
ss.close();
bw.close();
dis = null;
dos = null;
sss = null;
ss = null;
bw = null;
} catch (Exception e) {
System.out.println(e);
}
}
}===================================================================================================
[파일받기]
import java.net.*;
import java.io.*;
public class FileRecive {
public static void main(String args[]) {
int poNum = 5008;
String IPAdd = 211.244.38.51;
String filePath = C:/Java/MyProject/test/;
try {
Sonbsp; Socket s = new Socket(IPAdd, poNum);
System.out.println(소켓생성);
InputStream is = s.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
System.out.println(버퍼리더 생성);
String sfileName = br.readLine();
System.out.println(sfileName);
File f = new File(filePath, sfileName);
System.out.println(파일객체생성);
FileOutputStream out = new FileOutputStream(f);
System.out.println(기록할 파일 연결);
int i = is.read();
System.out.println(i); // 이부분에서 i 값이 -1 이 나와버려서 이 밑에 와일문이 실행되지 않습니다
int i = 0;
while((i = is.read())!=-1) {
System.out.println(i);
out.write((char)i);
} System.out.println(파일 수신 완료!!);
br.close();
is.close();
out.close();
s.close();
br=null;
is=null;
out=null;
s=null;
} catch (Exception e) {
System.out.println(e);
}
}
}
===========================================================================================
-
세나 2026-04-28
아! 그렇네요 ;;; 답변 감사합니다 ㅎㅎㅎㅎ
-
도담 2026-04-28
넷빈은 제가 안써봐서 잘 모르겠지만요 while( (i = dis.read()) = -1 ) { 여기에서 while 문 조건절에 결국 남는것은 i=-1 다시 말해 int 형은 i 가 오게되죠. 조건절에는 boolean 이 와야 하는데 int 가 옴으로 컴파일 에러 발생. 그리고 int i 선언 후 밑에서 또 다시 int i 선언하여 컴파일 에러가 발생 됩니다. 그리고 또 있었나? @@;; 훔.. 코드 테스트를 어제 해봤던 것이라 그닥 기억이 안나네요 ㅋ
-
얀 2026-04-28
컴파일이 안되나요? ;;; 넷빈으로 컴파일 했는데 돌아가긴 하던데요 ;;;
단지 와일로 아예 안들어가고 그냥 파일수신, 송신완료만 뜨는게 문제긴 하지만;
코드는 정말 저게 다예요;
원인은 aaa.mp3가 이것저것 하는 도중에 내용이 지워져서 0이었던 것까진 알았지만
괜찮으시다면 어느부분을 수정하셨는지 알려주실수 있을까요? -
YourWay 2026-04-28
훔... 봐드릴려고 해도 컴파일 조차 안되는 코드를 왜 안되는건지 봐줄수도 없지 않겠습니까? ㅡ0ㅡ//
뭐... 어쨌든 컴파일 되도록 몇군데 수정하고 나니 잘 되던데... 훔...
정확한 코드를 올려주세요. 그래야 어디가 잘못 된건지 알수 있을테니까요
| 번호 | 제 목 | 글쓴이 | 날짜 |
|---|---|---|---|
| 2752024 | 소숫점 뺄셈 !! ㅠㅜ | 초롬 | 2026-10-20 |
| 2751970 | 자바 게임 만들려는데 부탁드립니다 (1) | 라온제나 | 2026-10-19 |
| 2751908 | 자바스크립트 처리속도를 체크할 수 있는 방법 있나요? (1) | 테이 | 2026-10-19 |
| 2751822 | 그누보드 아이프레임으로 구현했는데 제목 클릭해서 들어가면 푸터가 동동...떠다녀요 | 내꺼하자 | 2026-10-18 |
| 2751790 | 자바 그래픽 관련을 공부하고 싶은데요.. 어디 좋은 사이트나 책 없을까요?? (1) | 큰재 | 2026-10-18 |
| 2751733 | CTF가머죠? (5) | 두동 | 2026-10-17 |
| 2751709 | 배열부분 궁금한 부분이있습니다. | 딸기우유 | 2026-10-17 |
| 2751677 | 포인터 책을 보다가,,, (2) | 동백 | 2026-10-17 |
| 2751648 | 익스플로 버전에 따라서 생기는 공백.. (1) | 모아 | 2026-10-17 |
| 2751623 | DEL 태그의에서 선굵기 및 컬러지정이 가능한가 해서요~ (4) | 비치나 | 2026-10-16 |
| 2751573 | 테마 업로드 에러.. (1) | 꽃 | 2026-10-16 |
| 2751548 | 수학? 물리?? (3) | 찬늘 | 2026-10-16 |
| 2751461 | 상단네비 fixed ie6 핵 해결방안이 있을까요? | 맑다 | 2026-10-15 |
| 2751436 | 레이아웃을 잡고 코딩을 하는데 드림위버에서의 결과와 IE에서 결과가 다르게 나오네요. (3) | 키클 | 2026-10-15 |
| 2751403 | 형들좀도와주세요string compression (1) | 알렉산더 | 2026-10-14 |
| 2751349 | 링크 다운로드하기 | 팬지 | 2026-10-14 |
| 2751295 | c++한번도 손않댄 사람이... | 날위해 | 2026-10-13 |
| 2751267 | 플래시8 사용에서 플레이어 만들었는데요 (1) | 블1랙캣 | 2026-10-13 |
| 2751182 | 회원가입 | 파랑새 | 2026-10-12 |
| 2751152 | 소셜 플러그인 문제입니다. | 얀 | 2026-10-12 |
