读取一个txt文件,文件中有一个8位的日期(任意),读出日期并打印此从日期开始的一个月日历,最好能有详细代码和注释
6条回答 默认 最新
关注 参考代码如下:
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DateCalendar { public static void main(String[] args) { printLatestMonth("src/date.txt"); } public static void printLatestMonth(String filePath){ String fileContent = readFromFile(filePath,null); if(fileContent==null||fileContent.length()<8){ System.out.println("日期格式不正确,请保证日期格式为yyyyMMdd"); return; } DateFormat format = new SimpleDateFormat("yyyyMMdd"); Calendar calendar = Calendar.getInstance(); try { Date currentDate = format.parse(fileContent); calendar.setTime(currentDate); System.out.println("crurent date is:"+currentDate); for(int i = 0;i<30;i++){ calendar.add(Calendar.DATE, 1); System.out.println(calendar.getTime()); } } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static String readFromFile(String fileName,String charSet){ if (fileName == null || "".equals(fileName)) { System.out.println("文件名称为空..."); return ""; } // 设置字符编码 if(charSet==null||charSet.length()==0){ charSet = "UTF-8"; } File file = new File(fileName); FileInputStream fin = null; StringBuffer buffer = new StringBuffer(); try { fin = new FileInputStream(file); BufferedReader reader = new BufferedReader(new InputStreamReader( fin, charSet)); String content = reader.readLine(); while (content != null) { buffer.append(content); // 循环读取下一行,没有这行代码就是死循环的啦。。。 content = reader.readLine(); } reader.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (fin != null) { try { fin.close(); } catch (IOException e) { e.printStackTrace(); } } } return buffer.toString(); } }
src目录下文件格式:20160310
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥15 能给我一些人生建议吗
- ¥15 mac电脑,安装charles后无法正常抓包
- ¥18 visio打开文件一直显示文件未找到
- ¥15 请教一下,openwrt如何让同一usb储存设备拔插后设备符号不变?
- ¥30 使用quartz框架进行分布式任务定时调度,启动了两个实例,但是只有一个实例参与调度,另外一个实例没有参与调度,不知道是为什么?请各位帮助看一下原因!!
- ¥50 怎么获取Ace Editor中的python代码后怎么调用Skulpt执行代码
- ¥30 fpga基于dds生成幅值相位频率和波形可调的容易信号发生器。
- ¥15 R语言shiny包和ncdf4包报错
- ¥15 origin绘制有显著差异的柱状图和聚类热图
- ¥20 simulink实现滑模控制和pid控制对比,提现前者优势