如何解决 Unicode 解码问题
How to solve UnicodeEncode proplem
我使用 python2.7 和 flask 框架,我尝试从 Html 页面的 textarea 中获取文本并将其存储在文本文件中,如果文本是用英文写的,它会成功,但我需要让它适用于阿拉伯语文本。
我尝试了很多解决方案但没有结果!
我能做什么!!这是代码。
# -*- coding: cp1256-*-
from flask import Flask, render_template, request
import jinja2
import os
import codecs
os.chdir("C:\Python27")
app = Flask(__name__)
@app.route("/")
def hello():
return render_template("razan.html")
@app.route('/submit', methods=['POST'])
def submit_textarea():
text = request.form.get("text")
with open('aaa.txt','w') as outfile:
outfile.write(text)
return render_template("razan.html")
if __name__ == "__main__":
app.run(host="0.0.0.0", port=int("3000"), debug=True)
这是 HTML 代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="cp1256">
</head>
<body>
<h1>Enter some text</h1>
<form action="submit" id="textform" method="post" >
<textarea name="text" type="text"> مرحبا </textarea>
<button type="submit" value="submit_textarea()" > submt</button>
</form>
</body>
</html>
它给我这个错误:
UnicodeEncodeError: 'ascii' 编解码器无法对位置 1-6 中的字符进行编码:序号不在范围内 (128)
以unicode读取文件
import codecs
outfile = codecs.open('aaa.txt', 'w', 'utf-8')
outfile.write(text)
我使用 python2.7 和 flask 框架,我尝试从 Html 页面的 textarea 中获取文本并将其存储在文本文件中,如果文本是用英文写的,它会成功,但我需要让它适用于阿拉伯语文本。 我尝试了很多解决方案但没有结果!
我能做什么!!这是代码。
# -*- coding: cp1256-*-
from flask import Flask, render_template, request
import jinja2
import os
import codecs
os.chdir("C:\Python27")
app = Flask(__name__)
@app.route("/")
def hello():
return render_template("razan.html")
@app.route('/submit', methods=['POST'])
def submit_textarea():
text = request.form.get("text")
with open('aaa.txt','w') as outfile:
outfile.write(text)
return render_template("razan.html")
if __name__ == "__main__":
app.run(host="0.0.0.0", port=int("3000"), debug=True)
这是 HTML 代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="cp1256">
</head>
<body>
<h1>Enter some text</h1>
<form action="submit" id="textform" method="post" >
<textarea name="text" type="text"> مرحبا </textarea>
<button type="submit" value="submit_textarea()" > submt</button>
</form>
</body>
</html>
它给我这个错误:
UnicodeEncodeError: 'ascii' 编解码器无法对位置 1-6 中的字符进行编码:序号不在范围内 (128)
以unicode读取文件
import codecs
outfile = codecs.open('aaa.txt', 'w', 'utf-8')
outfile.write(text)