Java 在表单或textArea中显示文本值,通过GSP和Groovy代码显示textForm
所以我有一个上传表单,在我选择了要上传的文件后,我提交了,因此我想将文件文档的内容显示到文本区域或表单,但我不知道如何获取该文件的参数并在该文件中呈现文本。 这是我的代码:文件displayForm.gsp 如上所示,我不想读取文件“D:/submitted\u file.uima”并渲染它。 但若我调用render方法,它得到的错误是文件为nullJava 在表单或textArea中显示文本值,通过GSP和Groovy代码显示textForm,java,grails,web,groovy,gsp,Java,Grails,Web,Groovy,Gsp,所以我有一个上传表单,在我选择了要上传的文件后,我提交了,因此我想将文件文档的内容显示到文本区域或表单,但我不知道如何获取该文件的参数并在该文件中呈现文本。 这是我的代码:文件displayForm.gsp 如上所示,我不想读取文件“D:/submitted\u file.uima”并渲染它。 但若我调用render方法,它得到的错误是文件为null 我从file.gsp调用文件参数时遇到问题。我应该从uploadForm和textAreatextField调用名称cfile、值或id还是其他名
我从file.gsp调用文件参数时遇到问题。我应该从uploadForm和textAreatextField调用名称cfile、值或id还是其他名称 如果不存在此文件,则必须创建此文件
File file = new File("C:/test.txt");
if(!file.exists()) {
file.createNewFile();
}
render file:x方法接受byte[]、java.io.file或inputStream参数,而您似乎正在传入一个commonmultipartfile。尝试调用渲染文件:f。。。相反,在上面的代码中,要实际呈现保存到磁盘上的文件。这不是真的,transferTo的文档明确指出,如果目标文件已经存在,将首先删除它。
class SampleController{
def f
def displayForm() {
if(params.cfile){
if(params.cfile instanceof org.springframework.web.multipart.commons.CommonsMultipartFile){ //new FileOutputStream('D:/submitted_file.txt').leftShift( params.cfile.getInputStream() );
f=params.cfile.transferTo(new File('D:/submitted_file.uima'));
render file:params.cfile.toString() ,contentType: "text", encoding:"UTF-8"
}else{
log.error("wrong attachment type [${cfile.getClass()}]");
}
}
}
File file = new File("C:/test.txt");
if(!file.exists()) {
file.createNewFile();
}