传入本地图片路径预览图片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片
.
// An highlighted block
/*
* 在线预览图片
*/
@RequestMapping("/IoReadImage3")
public @ResponseBody
void showImage(String filepath,HttpServletResponse response) throws IOException {
response.setContentType("text/html; charset=UTF-8");
response.setContentType("image/jpeg");
/* String fullFileName = getRealPath("/upload/" + path);*/
FileInputStream fis = new FileInputStream(filepath);
OutputStream os = response.getOutputStream();
try {
int count = 0;
byte[] buffer = new byte[1024 * 1024];
while ((count = fis.read(buffer)) != -1)
os.write(buffer, 0, count);
os.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (os != null)
os.close();
if (fis != null)
fis.close();
}
}
传入本地pdf文件路径预览pdf
/**
* pdf在线预览
* @param response
* @param filePath 文件路径
*/
@ResponseBody
@RequestMapping("/IoReadImage5")
public String IoReadImage5(HttpServletResponse response , String filePath) {
File f = new File(filePath);
//文件名
String fileName = filePath.substring(filePath.lastIndexOf("/")+1);
BufferedInputStream br = null;
OutputStream out = null;
String fileurl="file:///"+filePath;
try {
br = new BufferedInputStream(new FileInputStream(f));
byte[] bs = new byte[1024];
int len = 0;
response.reset(); // 非常重要
// 在线打开方式
URL u = new URL(fileurl);
String contentType = u.openConnection().getContentType();
response.setContentType(contentType);
response.setHeader("Content-Disposition", "inline;filename="+fileName);
out = response.getOutputStream();
while ((len = br.read(bs)) > 0) {
out.write(bs, 0, len);
}
out.flush();
out.close();
br.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return fileurl;
}