1

私はGAEを使用して、CSVファイルからの入力を必要とするWebサイトをホストしています。このcsvファイルがアップロードされたら、テーブルに変換します。しかし、私はMacとWindowsの互換性の問題に関する問題に遭遇しました。Macで生成されたCSVファイルが認識されず、次のエラーが発生しました。

new-line character seen in unquoted field - do you need to open the file in universal-newline mode?

これが私のPythonコードです

def loop_html(thefile):
    reader = csv.reader(thefile.file)   
    header = reader.next()
    i=1
    iter_html=""
    for row in reader:
        iter_html = iter_html +html_table(row,i)  #generate inputs table
        i=i+1

def html_table(row_inp,iter):
    mai_temp=float(row_inp[0])

    Input_header="""<table border="1">
                        <tr><H3>Batch Calculation of Iteration %s</H3></tr><br>
                        <tr>
                            <td><b>Input Name</b></td>
                            <td><b>Input value</b></td>
                            <td><b>Unit</b></td>
                        </tr>"""%(iter)
    Input_mai="""<tr>
                    <td>Mass of Applied Ingredient Applied to Paddy</td>
                    <td>%s</td>
                    <td>kg</td>
                </tr>""" %(mai_temp) 
    Inout_table = Input_header+Input_mai
    return Inout_table  

後で、コード'reader = csv.reader(thefile.file)'を'reader = csv.reader(open(thefile.file、' U'))'に変更しました。これにより、さまざまなタイプのエラーが発生しました。

TypeError: coercing to Unicode: need string or buffer, cStringIO.StringO found

誰かが私のコードを見て、私にいくつかの提案を与えることができますか?ありがとう!

4

1 に答える 1

1

私はちょうど解決策を見つけました。'splitlines()' は改行の問題を処理します。これがソースです。

reader = csv.reader(thefile.file.read().splitlines())
于 2013-02-11T18:53:16.527 に答える