2017-03-16 12 views
-1

파일을 찾기위한 찾아보기 버튼이있는 프로그램을 작성한 다음 선택한 파일을 엽니 다. 나는 당신이 'askopenfile'을 사용할 수 있다는 것을 알고 있지만 먼저 tkinter 창에서 Entry 상자에 표시 될 수 있도록 이름을 얻고 싶었습니다. 그런 다음 사용자는 'Use this file'을 누른 다음 열 수 있습니다.askopenfilename을 사용하여 텍스트 파일의 내용을 인쇄 한 후 위치를 얻는 방법

from tkinter import * 
from tkinter import ttk 
from tkinter import filedialog 

def main(): 
    self = Tk() 

    F1 = LabelFrame(self, text="Select File") 
    F1.grid(row=0, column=0, padx=3) 

    browse = Button(F1, text="Browse...", command=openfile) 
    browse.grid(row=0, column=2, padx=1, pady=3) 

    E1 = Entry(F1, text="") 
    E1.grid(row=0, column=1, sticky="ew") 

    L1 = Label(F1, text="Filename:") 
    L1.grid(row=0, column=0, padx=3) 

    B1 = Button(F1, text="Use This File", command=go) 
    B1.grid(row=1, column=2, padx=3, pady=3) 

    B2 = Button(F1, text="Cancel", width=7) 
    B2.grid(row=1, column=1, sticky="e") 

    self.mainloop() 

def openfile(): 
    global filename 
    filename = filedialog.askopenfilename() 
    E1.delete(0, END) 
    E1.insert(0, filename) 

def go(): 
    global filename 
    file = open(filename) 
    file.read() 
    print(file) 
    file.close() 
main() 

은 그래서 당신은 내가 B1을 누르고 파일을 열 수있는 프로그램을 얻고 내용을 인쇄 할 다음 경로가 엔트리에 기록 된 텍스트 파일을 선택하고 찾아보기를 누르고,하는 Tkinter의 창을 만든다 하지만 그것은 단지 인쇄 : 당신은 변수 및 인쇄가 아닌 파일 객체로 read()에서 반환 된 값을 저장해야

<_io.TextIOWrapper name='C:/Users/Me/text.txt' mode='r' encoding='cp1252'> 

답변

2

.

file_content = file.read() 
print(file_content) 
+0

감사합니다. – olymposeical