作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我是 grails 的新手。我正在做从客户端上传图像并将其存储在服务器中的 Web 应用程序。
我的 Gsp 代码是:
<g:uploadForm action="saveImage">
<input type="file" name="image">
<input type="submit" value="Submit">
</g:uploadForm>
我在 Controller 中的 saveImage 操作是:
def saveImage={
def file = request.getFile('image')
if (file && !file.empty) {
file.transferTo(new java.io.File("image.jpg"))
flash.message = 'Image uploaded'
redirect(action: 'uploadImage')
}
}
在这段代码中,如果我上传一些其他文件,如文本文件,它会抛出异常。为此我想检查文件扩展名,我想使用 If 循环来确保上传的文件是否为图像文件。但我不知道如何在 grails 中查找文件扩展名。
有没有其他方法可以在 grails 应用程序中上传图像。它必须只接受图像文件。
谁能提供帮助?
谢谢。
最佳答案
我不知道以下答案是查找文件扩展名的正确方法。我也是新手。但是这个答案有效
使用 file.getOriginalFilename() 方法。它返回一个类似“test.jpg”的字符串。然后你使用 tokenize 方法将文件名拆分为“.”。然后你从中获取最后一个字符串元素拆分列表。这是文件的扩展名。现在您可以执行剩余的过程。
关于java - 在grails中上传图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/362972/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!