要求:上传txt的文本内容与生成txt的文本内容保存一致
js实现(生成内容较为简单的TXT文本,不注重格式,自动换行)
// 生成有内容的TXT文件
function createTxt(filename, text) {
var pom = document.createElement('a');
pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
pom.setAttribute('download', filename);
if (document.createEvent) {
var event = document.createEvent('MouseEvents');
event.initEvent('click', true, true);
pom.dispatchEvent(event);
} else {
pom.click();
}
}
java后台实现:数据库字段选用的是longtext类型,它会保存你原有的的文本格式,包括换行、tab...生成txt文本时不会改文本格式。
生成文件流返回给前端页面,如果你用的是ROSE框架,用Invocation inv响应就可以了,如果不是,那就用HttpServletResponse response响应。
案例一: