마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

파일 입출력 관련 이거 어떻게 하는게 좋을까요..도와주세요

0 추천

현재 그림처럼 에디트 텍스트 에 문자입력후 저장을 하면 sdcard에 저장된 .txt파일이 생기게 해놨습니다.

 

그런데 여기서 이미지뷰 를 클릭하면 사진을 선택할수 있는 갤러리가 열리고 사진선택하면 사진이 들어갑니다

그렇게해서 저장 버튼을 눌러서 이미지뷰도 txt파일 저장한것처럼 하고싶은데 생각처럼 쉽게 되지가 않습니다.

저장버튼시 코드는 아래와 같이 구현했습니다.

근데 이미지뷰에 넣은 사진은 에디트텍스트화 함게저장할수 없지않나요?

그래서 따로 저장해야할거같은데 이미지는 png로 저장하면 되나요?

아래 코드에서 어떻게 합쳐야할지 걱정이네요

고수님들 한번 봐주세요 어떻게 하는게 좋을지..답변 부탁드립니다.

 

bSave.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View arg0) {

                // TODO Auto-generated method stub

                String data = et.getText().toString();

                String fileName = "";

                count++;

                fileName = "memo" + count + ".txt";

 

                FileOutputStream fos = null;

                try {

 

                    File f = new File(mSDpath + "/mydir/" + fileName);

                    // Log.i("TAG", "1");

 

                    fos = new FileOutputStream(f);

                    fos.write(data.getBytes());

                    fos.close();

                    Toast.makeText(getApplicationContext(), "메모가 저장되었습니다.", 0)

                            .show();

                    // et.setText("저장완료");

                } catch (Exception e) {

                    e.printStackTrace();

                }

            }

        });

 

익명사용자 님이 2016년 10월 23일 질문

1개의 답변

0 추천
자바는 객체의 Serialize/Deserialize가 가능하므로 파일에 기본적으로 어떤 오브젝트라도 Serialize만 하면 저장이 가능합니다.
따라서 이미지 따로 텍스트 따로 저장하지 마시고 화면에서 입력받은 데이터를 담는 클래스를 만드시고 이 클래스의 인스턴스를 파일에 저장하시면 됩니다. 다양한 방법으로 가능합니다. 아래 답변을 참조하시면 충분히 아이디어를 얻어서 구현이 가능할 것 같습니다.

http://stackoverflow.com/questions/20962893/save-image-files-and-some-text-together-as-one-file-object
spark (227,830 포인트) 님이 2016년 10월 23일 답변
...