.lastIndexOf(System.getProperty("file.separator"))输出值为-1的原因
时间: 2024-02-01 13:56:53 浏览: 127
这个问题的原因可能是在当前环境中,并没有使用与该代码片段匹配的文件分隔符。在某些操作系统中,使用的文件分隔符可能与Java中默认的不同,如果应用程序在不同的环境中运行,就需要使用System.getProperty("file.separator")来获取当前环境中使用的文件分隔符。如果在当前环境中没有使用该文件分隔符,则会返回-1。
相关问题
lastIndexOf(File.separator)输出值为-1的原因
lastIndexOf(File.separator)可能会返回-1的原因是当前代码运行的操作系统是Windows,但代码中使用的分隔符是"/",而不是Windows系统中的"\\"。在这种情况下,调用lastIndexOf(File.separator)会返回-1,因为在字符串中没有找到分隔符。为了解决这个问题,可以使用System.getProperty("file.separator")来获取操作系统的分隔符,而不是使用硬编码的分隔符。这样可以确保代码在任何操作系统上都可以正确运行。
file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1);作用
这行代码的作用是获取上传文件的扩展名。它使用了Java的String类的lastIndexOf()函数来获取原始文件名中最后一个点的位置(即扩展名前面的点),并使用substring()函数从该位置的下一个字符开始截取字符串,得到扩展名。例如,如果上传文件的原始文件名为"file.jpg",则该代码将返回"jpg"。
阅读全文
相关推荐
















