File management

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • erict1689

    File management

    I am writing a program in which i open up a file and read the contents
    then do some calculations and update the information but in a new
    file. So my question is how do i go about declaring the new file so
    that the program will know that the new information goes into the new
    file and not the original? if it helps here is the code that i have
    so far:
    def startUp():
    # Purpose: opens files and print report headings
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay
    payFile=open("p ayroll.txt", "r")
    payFile.readlin e()


    def readRecord():
    # Purpose: reads a record
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    employeeRec = payFile.readlin e()
    if employeeRec == "":
    eof = True
    else:
    # parse file line for record fields and format/convert for
    final output
    empName = employeeRec[0:25].strip()
    previousYTD = float(employeeR ec[25:40])
    payRate = float(employeeR ec[40:55])
    hoursWorked = float(employeeR ec[55:70])
    recordCount += 1
    eof = False

    def writeRecord():
    # Purpose: writes the updated record to the output file
    #Parameter
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    def processRecords( ):
    # Purpose: loops through input file and processes each record
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    while not eof:
    calculatePay()
    printReportLine ()
    writeRecord()
    readRecord()

    def calculatePay():
    # Purpose: calculates pay and updated YTD
    # Return values: float - calculated pay, float - updated YTD amount
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    def printReportLine ():
    # Purpose: prints employee pay information
    # Parameters passed: float - calculated pay, float - updated YTD
    amount
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    def closeUp():
    # Purpose: end of program housekeeping
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay

    payFile.close()
    payFileUpdated. close()
    print "\nNumber of records in the file was",recordCoun t

    any and all help is appreciated.

  • Ronny Sonntag

    #2
    Re: File management

    erict1689 schrieb:
    def closeUp():
    # Purpose: end of program housekeeping
    global empName, previousYTD, payRate, hoursWorked, recordCount,
    eof, payFile, \
    payFileUpdated, newYTD, currentPay
    >
    payFile.close()
    payFileUpdated. close()
    print "\nNumber of records in the file was",recordCoun t
    >
    any and all help is appreciated.
    >
    don't use global, here ist no need for.

    if you need a output file so open one and use it.


    def writeFile(fileN ame, content):
    hd = open(fileName, 'wb');
    hd.write(conten t)
    hd.close

    Comment

    Working...