#$Author : kc - Nico. #$license GPL import string import Tkinter import tkFont import sys from os.path import exists MODE_READ="r" MODE_WRITE="w+" class Start(Tkinter.Frame): def __init__(self): Tkinter.Frame.__init__(self) self.TextFileW=Tkinter.StringVar() self.TextFileR=Tkinter.StringVar() self.TextChars=Tkinter.StringVar() self.TextNew=Tkinter.StringVar() self.x=0 self.Label=None self._GUI_Tkinter() def _GUI_Tkinter(self): TextFrame=Tkinter.Frame() Label=Tkinter.Label(TextFrame,text="File to read:") Label.pack(side=Tkinter.LEFT) FileRead=Tkinter.Entry(TextFrame,textvariable=self.TextFileW).pack(side=Tkinter.LEFT) Tkinter.Label(TextFrame,text="New file to write:").pack(side=Tkinter.LEFT) FileWrite=Tkinter.Entry(TextFrame,textvariable=self.TextFileR).pack(side=Tkinter.LEFT) TextFrame.pack() LabelFrame=Tkinter.Frame() Tkinter.Label(LabelFrame,text="Word to change:").pack(side=Tkinter.LEFT) String=Tkinter.Entry(LabelFrame,textvariable=self.TextChars).pack(side=Tkinter.LEFT) Tkinter.Label(LabelFrame,text="New word:").pack(side=Tkinter.LEFT) NewWord=Tkinter.Entry(LabelFrame,textvariable=self.TextNew).pack(side=Tkinter.LEFT) LabelFrame.pack() ButtonFrame=Tkinter.Frame() ButtonGo=Tkinter.Button(ButtonFrame,text="Let's Go!",relief=Tkinter.RAISED,background="green",command=self.ButtonFunction).pack() Tkinter.Button(ButtonFrame,text="Exit",relief=Tkinter.RAISED,background="pink",command=sys.exit).pack() Tkinter.Button(ButtonFrame,text="About",relief=Tkinter.RAISED,background="azure",command=self.Author).pack() ButtonFrame.pack(anchor=Tkinter.W,fill=Tkinter.X) def Author(self): if self.x == 0 : Tkinter.Label(text="Author: Nicola Piazzolla. License GPL").pack(side=Tkinter.BOTTOM) self.x=self.x+1 def ButtonFunction(self): fileread=self.TextFileW.get() filewrite=self.TextFileR.get() string=self.TextChars.get() new=self.TextNew.get() if fileread=='' or filewrite=='': if self.Label == None: framez=Tkinter.Frame() self.Label=Tkinter.Label(framez,text="Error: You must type fileread, and filewrite").pack() framez.pack() self.Label=1 self.RW_File(fileread,filewrite,string,new) def RW_File(self,fileread,filewrite,string,new): mode=exists(filewrite) if (mode == 1): sys.exit("This File exist before. Change it!\n") try: pathwrite=open(filewrite,MODE_WRITE) except IOError, gest: print gest.filename , gest.strerror try: pathread=open(fileread,MODE_READ) except IOError, gest: print gest.filename, gest.strerror for strings in pathread.readlines(): pathwrite.write(strings.replace(string,new)) pathread.close() pathwrite.close() if (__name__=="__main__"): incoming=Start() incoming.mainloop()