private void readManagerInfo() { //按行读取文本信息 List<String> ManagerInfoStrList = FileUtil.readUtf8Lines("NetParManageSystem\\DataTxt\\ManagerTab.txt"); //遍历集合获取信息 //MID=001&MName=韦力诚&MPersonID=450121200308061111&phone=13014981111&MPassword=11111111&MQQ=320641111 for (String str : ManagerInfoStrList) { String[] MInfoArr = str.split("&");//进行&符号切割 String[] arr0 = MInfoArr[0].split("=");//MID String[] arr1 = MInfoArr[1].split("=");//MName String[] arr2 = MInfoArr[2].split("=");//MPersonID String[] arr3 = MInfoArr[3].split("=");//phone String[] arr4 = MInfoArr[4].split("=");//MPassword String[] arr5 = MInfoArr[5].split("=");//MQQ char[] pw = arr4[1].toCharArray();//密码转换为char[] //封装信息 Manager m = new Manager(arr0[1], arr1[1], arr2[1], arr3[1], pw, arr5[1]); allManager.add(m);//将信息存入数组 } }
时间: 2024-03-19 08:40:45 浏览: 60
这段代码是一个 Java 方法,用于读取文本文件中的信息并封装为一个 Manager 对象,并将其存入一个 ArrayList 中。具体过程如下:
1. 调用 FileUtil 工具类的 readUtf8Lines 方法按行读取文本信息,并将其存入 List<String> 类型的变量 ManagerInfoStrList 中。
2. 遍历 ManagerInfoStrList 集合,对于其中的每一行信息,使用 split 方法以 & 符号为分隔符进行切割,并将切割后的结果存入一个 String 类型的数组 MInfoArr 中。
3. 对于 MInfoArr 数组中的每一个元素,再次使用 split 方法以 = 符号为分隔符进行切割,并将切割后的结果存入对应的 String 数组中。
4. 将密码信息转换为 char[] 类型,并使用 Manager 类的构造方法将所有信息封装为一个 Manager 对象。
5. 将 Manager 对象存入 allManager 集合中。
需要注意的是,如果 ManagerInfoStrList 中的每一行信息不符合特定的格式(如缺少某个字段或字段顺序不对),则可能会导致程序出现异常。此外,如果文本文件不存在或者读取权限不足,也会导致程序出现异常。
相关问题
@Controller @RequestMapping("/file") public class FileController extends BaseController { /** * 文件上传 */ @RequestMapping(value = "/upload", method = RequestMethod.POST) @ResponseBody public JsonResult upload(@RequestParam("file")MultipartFile file, @RequestParam("key")String key, HttpSession session){ Map<String,String> map = new HashMap<>(); try { map = FileUtil.upload(file); } catch (Exception e) { e.printStackTrace(); return JsonResult.error("上传失败"); } String filePath = map.get("filePath"); //将图片URL存在session中 String sessionKey = Constant.SESSION_IMG_PREFIX + key; List<String> imgList = (List<String>) session.getAttribute(sessionKey); if(imgList == null){ imgList = new ArrayList<>(); } imgList.add(filePath); session.setAttribute(sessionKey,imgList); return JsonResult.success("上传成功"); } }
这段代码是一个 Java Spring MVC 的控制器,用于处理文件上传的请求。该控制器对应的请求 URL 是 "/file/upload",请求方法为 POST。在请求参数中,有一个名为 "file" 的文件参数和一个名为 "key" 的字符串参数。其中,"file" 参数用于上传文件,"key" 参数用于标识上传的文件类型。在文件上传成功后,该控制器将文件路径存储在 HttpSession 中,以便后续处理。同时,该控制器返回一个 JsonResult 对象,其中包含上传结果的信息。
List<YqjgErZzsjZhbExcelEntity> list = new ArrayList<>(); Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("油气加工二大队装置数据综合报","sheet1"), addOrderNumToExcelAnnotation(YqjgErZzsjZhbExcelEntity.class), list); String fileName ="模板信息表导出.xlsx"; FileUtil.downLoadExcel(fileName,response,workbook);请帮我排查一下
根据您提供的代码,我看到您使用了 EasyPOI 的 `ExcelExportUtil` 工具类来导出 Excel,但您没有提供 `YqjgErZzsjZhbExcelEntity` 类的定义,因此我无法判断该类是否正确地定义了 `@Excel` 注解。
除此之外,您的代码中还有以下几点需要注意:
1. `list` 变量为空,您应该在 `list` 中添加需要导出的数据。
2. `addOrderNumToExcelAnnotation(YqjgErZzsjZhbExcelEntity.class)` 返回的是 `YqjgErZzsjZhbExcelEntity` 类型的对象,而不是该类的实例对象。您需要传递该类的实例对象才能正确地为实例对象的 `@Excel` 注解中的 `orderNum` 赋值。
3. `FileUtil.downLoadExcel` 方法是自定义的方法,我无法判断该方法的实现是否正确。您可以检查一下该方法是否正确地将 Excel 文件输出到了浏览器端。
如果您仍然遇到问题,请提供更多的代码细节和错误信息,以便更准确地定位问题所在。
阅读全文