1

주제: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

티스토리에서 xml백업파일 형식을 빌어 문서를 작성하여 글을 작성하고 있습니다.
< < less than
> > greater than
& & ampersand 
&apos; ' apostrophe
" " quotation mark
이런 정도만 바꾸어서 글을 xml형식으로 저장해서 글을 올리고 있습니다.

그런데, 그림파일(png형식)도 문서에 끼워넣고 싶습니다.
png파일을 어떤 형식으로 읽어서 끼워넣어야 할지요.

2

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

읽어서 base64로 인코딩 하셔서 넣으시면 되는 것으로 알고 있습니다.
그렇게 하니 제대로 복원이 되는 것을 확인하였습니다.

http://nosyu.pe.kr/1862

c'est un des orgueils de notre pauvre humanité, que chaque homme se croie plus malheureux qu'un autre malheureux qui pleure et qui gémit à côté de lui
    - Le Comte de Monte-Cristo

3

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

nosyu님 답변 감사합니다. 추가 질문이 있습니다.

base64로 인코딩하기 전에... 파일을 읽어야 하잖아요.
png파일을 읽을 때, 어떤 binary type을 써서 읽어 들여야 할까요?

4

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

그냥 binary로 읽으면 됩니다;; png 파일을 읽어서 직접 파싱하여 이미지를 화면에 뿌려주려는 게 아닌 이상 그냥 파일의 바이트열이 그대로 나오게 읽으면 되지요.

문제의 답은 우리 안에 있다.
내면에 귀를 기울여 보자.

5

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

daybreaker님 답변 감사합니다. 제 문제가 안풀려서 다시 질문합니다.

아래는 티스토리에서 xml로 백업한 문서중 일부입니다.

[##_1C|nk220000000000.png|width="360" height="216" alt="사용자 삽입 이미지"|_##]
아마 윗부분이 그림파일이 들어가는 곳에 위치하겠지요.

<attachment mime="image/png" size="17078" width="360" height="216"><name>nk220000000000.png</name><label>tt.png</label>
<enclosure>0</enclosure><attached>1234944169</attached><downloads>0</downloads>
<content>iVBORw0KGgoAAAANSUhE  ...

... 5CYII=</content></attachment>

이렇게 첨부파일로 그림이 함께 저장되게 되어 있습니다.

NoSyu님께서 말씀하신데로... base64인코딩해서 <content>테그 사이에 넣어주었습니다. 결과는 실패이구요. 제 추측은, base64가 아닌 다른 방식이거나, 제가 모르는 문제가 있는 듯 하네요.

sbpyun (2009-02-18 19:15:11)에 의해 마지막으로 수정

6

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

제 개인적인 경험으로는 base64 인코딩 시 개행을 하지 않아야 하더군요.
그렇게 하지 않아서 복원을 해도 에러가 발생하였습니다.
여튼 위의 링크는 제가 만든 프로그램의 소스를 공개한 글입니다.
postClass.pm에서 처리하였으니 참고가 되시길 바랍니다.

개인적으로 왜 그런 말이 문서화되어있지 않은지 답답...;;;
(제가 못 찾은 것인지도 모르겠지만...)
저 프로그램도 결과물을 보고 상상하며 만들어서 결과가 제대로 나오는 것만 확인하였습니다...;;;

NoSyu (2009-02-18 20:43:02)에 의해 마지막으로 수정

c'est un des orgueils de notre pauvre humanité, que chaque homme se croie plus malheureux qu'un autre malheureux qui pleure et qui gémit à côté de lui
    - Le Comte de Monte-Cristo

7

답글: xml백업파일의 데이터 복원시, png그림파일 끼워넣기.

NoSyu 작성:

제 개인적인 경험으로는 base64 인코딩 시 개행을 하지 않아야 하더군요.
그렇게 하지 않아서 복원을 해도 에러가 발생하였습니다.
여튼 위의 링크는 제가 만든 프로그램의 소스를 공개한 글입니다.
postClass.pm에서 처리하였으니 참고가 되시길 바랍니다.

개인적으로 왜 그런 말이 문서화되어있지 않은지 답답...;;;
(제가 못 찾은 것인지도 모르겠지만...)
저 프로그램도 결과물을 보고 상상하며 만들어서 결과가 제대로 나오는 것만 확인하였습니다...;;;

T_T http://dev.textcube.org/wiki/devReference 쪽에 기술해 놓으면 나중에 도움이 되겠군요. 기존의 TTXML 분석 문서를 하나 적어 보아야 겠습니다. ;;

"Everything looks different on the other side."

-Ian Malcomm, from Michael Crichton's 'The Jurassic Park'