2010-03-15 4 views
1

내 앱에서 개체를 저장하기위한 자체 파일 형식을 만들고 싶습니다. 기본적으로, 나는 새로운 파일 형식이 급히 필요하지 않지만, 더 좋을 것이다.자신의 파일 형식을 만드는 방법은 무엇입니까?

수업이 있습니다. 예를 들어 자동차. 그것은 생성자 (String name, String color, int length, Driver driver)를 가진다. 자동차가 만들어지면 (인스턴스) 어떻게 파일처럼 저장합니까?

답변

2

개체를 파일로 저장하려면 serialization.

좋아하는 파일 확장자를 선택할 수 있습니다. 예 : .car.

Good serialization tutorial.

+0

"실제"응용 프로그램에서는 직렬화가 매우 좋은 옵션이 아닙니다 (안녕하세요 세계 또는 숙제 종류와 반대). 특히 자신의 시리얼 라이저/디시리얼라이저를 작성하지 않은 경우. – saugata

+0

그리고 왜 진짜 응용 프로그램을위한 좋은 옵션이 아닌가요? 어디에서 독자적인 시리얼 라이저를위한 튜토리얼을 찾을 수 있습니까? – joseph

+0

@saugata 나는 그렇게 생각하지 않는다. 많은 "실제"응용 프로그램은 직렬화를 사용합니다. –

0

기본적으로 자신의 파일 형식을 '생성'하려면 표준을 정의하고 자신의 파일 확장명을 사용하십시오. 당신이 일관성있는 한 오랫동안 뛰어 넘을 큰 농구는 없습니다.

개체를 저장하고 저장한다는 것은 확실하지 않습니다.

오브젝트 inputoutput 스트림 메소드를 추가로 살펴보십시오. 마지막으로 java의 메소드 직렬화에 대해서는 this을보십시오.

+0

수업이 있습니다. 예를 들어 자동차. 그것은 생성자 (String name, String color, int length, Driver driver)를 가진다. 자동차가 만들어지면 (인스턴스) 파일과 같이이 인스턴스를 저장하는 방법을 모르겠다. – joseph

+0

방금 ​​내가 내 대답에 추가 한 클래스를 살펴보면, 그들이 찾고있는 것과 더 가깝다고 생각한다. – zellio

1

사용자 지정 확장명을 가진 XML 파일로 저장합니다. 나는 그들이 XML로 그 파일을 읽는 나의 신청을 말할 것입니다. 나를 위해, 그것은 일관성을 보장하는 가장 쉬운 방법입니다. 또한 응용 프로그램이 사용자 요청에 따라 다른 응용 프로그램과 통신해야하는 경우에도 도움이 될 수 있습니다.

+1

XML (사람이 읽을 수있는 형식)의 장점은 다른 응용 프로그램에서도 파일을 읽을 수 있다는 것입니다. 프로그램/서비스가 더 이상 제공되지 않을 경우를 대비하여. Hunt와 Thomas는 Pragmatic Programmer에서 토론합니다. 관심있는 장을 "일반 텍스트의 힘"이라고합니다. – Matthew

+0

읽기의 의미에 따라 다릅니다. 그것은 어떤 양의 정보를 제공하는 xml 텍스트 파일을 볼 수있게합니다. 그것은 다른 프로그램에 대한 XML 파일의 종류에 대한 소비자의 권리를 쉽게 만들 수 있지만, xml 파일의 자신의 유형을 만들면 다른 사람이 파일을 저장하려는 정보를 이해할 수 없을 것입니다. –

관련 문제