달력

1

« 2021/1 »

  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  
  •  
반응형



 

text file(텍스트 파일)

Python에서 파일을 처리하기 위해서는 다른 언어에서와 마찬가지로 파일을 오픈하고, 데이터를 읽거나 쓴 후, 파일을 닫아주게 됩니다.

 

 

 

파일 쓰고 읽기

 

단계

메소드

1

파일 오픈

open()

2

파일 쓰고 읽기

write()

read()

readline()

readlines()

3

파일 닫기

close()

 

 

  

파일을 오픈하기

·       파일을 오픈하기 위해서는 내장함수 open()을 사용합니다.

·       첫번째 파라미터로 오픈할 파일명을 지정하면 됩니다.

·       open() 함수는 다양한 파라미터를 지정할 수 있는데, 흔히 사용되는 파라마터로 파일모드를 결정하는 mode 와 파일인코딩 방식을 지정하는 encoding 등을 지정 할 수 있습니다.

 

 

 

open(path, mode, encoding)

parameter

description

path

파일 경로

mode

·       파일이 열리는 모드

·       파일모드는 파일을 읽을 것인지 쓸 것인지 혹윽 텍스트 파일인지 바이너리 파일인지 등을 지정할 때 사용합니다.

·       파일모드에는 읽기(r), 쓰기(w 혹은 x), 추가(a), 수정(+) 모드를 지정할 수 있으며, 텍스트 파일(t), 바이너리 파일(b) 를 지정할 수 있습니다. 만약 파일모드를 지정하지 않으면, 디폴트로 텍스트 읽기 (rt) 모드가 설정됩니다.

 

설명

r

기본값

읽기 모드로 열기

w

쓰기 모드로 열기, 파일을 먼저 자른다.

x

베타적 생성을 위해 열리고, 이미 존재하는 경우 실패합니다.

a

쓰기 모드로 열고, 파일의 끝에 내용을 추가합니다.

b

2 모드(바이너리 모드)

t

텍스트 모드 (기본값)

+

업데이트 (읽기 및 쓰기)를 위한 디스크 파일 열기

U

유니버설 개행 모드 (사용되지 않음)

 

encoding

·       파일 인코딩 설정

·       Python의 문자열을 파일로 쓸 때 문자열은 바이트로 변경되는데, 이때 인코딩 방식에 따라 다른 바이트 결과를 가질 수 있습니다.

·       파일을 읽어 들일 때 인코딩 방식에 따라 다른 문자열로 읽혀 들일 수 있습니다. 따라서, 파일을 오픈할 때 encoding 파라미터를 지정해서 어떤 인코딩 방식을 사용하는지 명시적으로 지정는 것이 좋습니다.

·       만약 encoding 파라미터를 지정하지 않으면 시스템 디폴트 인코딩 방식을 사용합니다.

 

 


with open() as 별칭:

파일 오픈 해당 블록이 끝나면 자동으로 오픈한 파일 자원을 닫아줍니다.

 

 

 

파일을 읽기/쓰기

·       파일을 오픈한 후, 파일을 읽기 위해서는 read(), readline(), readlines() 등의 메서드를 사용합니다.

·       파일을 오픈한 후, 파일을 쓰기 위해서는 write(), writelines() 등의 메서드를 사용합니다.

·       writeline() 메서드는 없으며 다음 라인으로 가기 위해서는 write() 메서드에서 "\n" 를 지정해 주어야 합니다. Python Universal Newline 이라고 하여 플랫폼에 상관없이 라인 Delimeter "\n"을 사용합니다.

·       실행 플랫폼이 윈도우즈인 경우 이 Universal Newline CRLF (\r\n) 으로 변경되고, 맥이나 리눅스에서는 LF (\n)로 자동으로 사용됩니다.

 

 

 

readline()

라인만 읽어서 반환합니다.

 

 

 

readlines()

각각의 라인을 읽어서 라인을 요소로하는 리스트를 반환합니다.

 




반응형

'Development > Python' 카테고리의 다른 글

Python 개발 환경 구축 다운로드 & 설치하기 파이썬 download & install  (0) 2021.01.05
google cloud vision 라이브러리 설치  (0) 2020.12.29
text file(텍스트 파일)  (0) 2020.12.07
math 모듈  (0) 2020.11.21
신뢰도 측정방법  (0) 2020.11.09
fivenum()  (0) 2020.11.03
Posted by codedragon codedragon

댓글을 달아 주세요

반응형

SD카드에 파일을 생성하고 해당 파일 읽어오기

   

   

강의 내용

activity_main.xml

RelativeLayout 변경

Graphical Layout > Form Widgets-TextView 추가

  

MainActivity.java

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

   

//파일명 지정

//SD카드 경로 지정

//파일 생성

>확인

//파일로부터 데이터 읽기

>확인

AndroidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

   

   

   

출력 결과

   

DDMS창에서 파일 생성 확인

   

PC로 파일 옮긴 후 파일 내용 확인하기

   

   

   

반응형
Posted by codedragon codedragon

댓글을 달아 주세요

반응형

Activity가 가지고 있는 내장 메소드를 사용하여 내장영역에 데이터를 저장하고 호출하기

  • Activity 생명주기에 의해 내용을 자동 저장하도록 구현
  • 내장영역이므로 경로 없이 파일 호출가능

   

   

강의 내용

activity_main.xml

RelativeLayout 변경

Graphical Layout > Form Widgets-Button추가

Graphical Layout > Text Fields-Plain Text 추가

  

MainActivity.java

//파일명 지정

//이벤트 처리

//파일로 부터 Data를 읽어옴

//파일에 Data를 저장함

  

  

   

   

Activity생명주기를 통한 Data 처리

   

   

파일 저장 경로

  • 생성된 파일은 DDMS창을 통해 확인할 수 있습니다.
  • \Data\Data\kr.android.file\files\ 경로에 파일이 생성됩니다.

   

 

   

출력 결과

   

닫기 버튼 또는 종료버튼 클릭 시 데이터 저장 수행

   

다시 앱을 실행한 경우

   

   

애뮬레이터에 있는 파일을 PC로 복사 하기/PC의 파일을 애뮬레이터에 복사하기

   

DDMS창 File Explorer의 파일 관련 아이콘 설명

  

Pull a file from device

애뮬레이터에서 PC로 파일 복사

  

Push a file into device

PC에서 애뮬레이터로 파일 복사

  

Delete the select

선택항목 삭제

  

New Foler

폴더 생성

   

애뮬레이터에 있는 파일을 PC로 복사 하기

애뮬레이터가 실행된 상태에서 DDMS창을 클릭합니다.

   

오른쪽 영역의 File Explorer탭을 클릭합니다.

   

\Data\Data\kr.android.file\files 경로이동하면 notes.txt파일이 생성된 것을 확인 할 수 있습니다.

notes.txt파일을 선택 > Pull a file from device버튼을 클릭합니다.

   

저장할 경로 선택 > 확인

   

폰에서 PC로 저장한 파일

   

notes.txt 내용 확인

   

   

PC의 파일을 애뮬레이터에 복사하기

파일을 복사할 위치로 이동한 후 >

Push a file into device버튼을 클릭 >

폰으로 옭길 파일을 선택 > 열기

 

반응형
Posted by codedragon codedragon

댓글을 달아 주세요

반응형

파일과 디렉토리 관련 주요 메서드

   

android.content.Context의 파일 및 디렉토리 관리 관련 주요 메서드들

메서드

용도

openFileInput()

하위 디렉터리 /files에 있는 응용프로그램 파일을 읽기 모드로 오픈합니다.

openFileOutput()

하위 디렉토리 /files에 있는 응용프로그램 파일을 쓰기 모드로 열거나 생성합니다.

deleteFile()

하위 디렉토리 /files에 있는 응용프로그램 파일을 삭제합니다.

fileList()

하위 디렉토리 /files의 모든 파일의 목록을 얻습니다.

getFilesDir()

하위 디렉토리 /files에 대한 객체를 얻습니다.

getCacheDir()

하위 디렉토리 /cache에 대한 객체를 얻습니다.

getDir()

주어진 이름의 응용프로그램 하위 디렉토리를 얻거나 생성합니다.

   

 

파일 생성 및 쓰기

   

파일 생성 경로

안드로이드에서 파일을 생성하면 기본적으로 다음과 같은 디렉터리에 생성됩니다.

/data/data/<응용프로그램 패키지 이름>/files/<파일명>

   

 

sample.txt 쓰기 모드로 오픈, 파일이 존재하지 않으면 새로 생성

Import java.io.FileOutputStream

FileOutputStream fos;

String strFileContents = "파일에 기록될 내용"

fos = openFileOutput("sample.txt", MODE_PRIVATE);

fos.write(strFileContents.getBytes());

fos.close();

 

   

기존 파일에 자료를 추가

Import java.io.FileOutputStream

FileOutputStream fos;

String strFileContents = "파일에 기록될 내용"

fos = openFileOutput("sample.txt", MODE_APPEND);

fos.write(strFileContents.getBytes());

fos.close();

   

 

파일 읽기

기존에 생성되어 있는 파일 읽기

Import java.io.FileInputStream

String strFileName = "sample.txt";

FileInputStream fis = openFileInput(strFileName);

   

   

   

내장영역에 데이터 저장 경로

DDMS > File Explorer 에서 확인

\data\data\[package folder]\files\

   

   

 

외장메모리카드에서 읽기

 

외장하드 경로 구하기 : Environment. getExternalStorageDirectory()

외장하드 경로 : /sdcard

   

AndroidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

 

반응형
Posted by codedragon codedragon

댓글을 달아 주세요