수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

파일 전송하고 받는 코드입니다

눈솔

2026.04.28

파일 수신송신의 개념을 잡고자 간단한 코드를 돌려보는데요
파일이 저장될때 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);
}

}
}
===========================================================================================

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 세나 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
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com