读取文件数据而不将其保存在Flask中
我正在编写我的第一个烧瓶应用程序。我正在处理文件上传,基本上我想要的是读取上传文件的数据/内容而不保存它,然后将其打印在结果页面上。是的,我假设用户始终上传一个文本文件。
这是我正在使用的简单上传功能:
@app.route('/upload/', methods=['GET', 'POST'])def upload():
if request.method == 'POST':
file = request.files['file']
if file:
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
a = 'file uploaded'
return render_template('upload.html', data = a)
现在,我正在保存文件,但是我需要的是一个’a’变量来包含文件的内容/数据。
回答:
FileStorage
包含stream
字段。该对象必须扩展IO或文件对象,因此它必须包含read和其他类似方法。FileStorage
还扩展了stream字段对象属性,因此你可以使用file.read()
代替file.stream.read()
。你也可以使用save
带有dst
参数as
的参数StringIO
或其他IO或文件对象来复制FileStorage.stream
到另一个IO或文件对象。
以上是 读取文件数据而不将其保存在Flask中 的全部内容, 来源链接: utcz.com/qa/423302.html