文件保存|学习笔记

简介: 快速学习文件保存

开发者学堂课程【Java 高级编程文件保存】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/350


文件保存


从键盘输入文件的内容和要保存的文件名称,然后根据输入的名称创建文件,并将内容保存到文件中。

在本程序里面只要求开发者保存的是文件名称而并没有设置文件路径,那么对于文件路径就应该在程序启动之前就准备好。

举例:

package cn.mldn.demo;

import java.io.File;

I public class IocaseDemo {

private static finalstring SAVE_DIR ="D:"+ File.separator +"mldndata"+ File.separator ;

static {//项目启动的时候该路径应该首先创建

'File file = new File(SAVE_DIR); /1路径,但是这个文件目录有可能不存在

if(lfile.exists()){/77文件目录不存在

"file.mkdirs()";7/创建目录

public static void main(string[] angs) {

图片61.png

图片62.png

1、定义一个文件操作的服务接口

package cn.mldn.demo.service;

public interface IFileService {

/**

*定义文件的保存处理方法

*@return 保存成功返回true,否则返回false

public boolean save();


2、在 InputUtil 类里面追加有输入字符串的处理方法

private static final BufferedReader INPUT = new BufferedReader(new InputStreamReader(System.in))

private Inpututil ()

public static string getstring(string prompt){

String str = nuil;

boolean flag = true;

while(flag){ system.out.print(prompt);

try { str= INPUT.readLine();

if (!"".equals(str)){

flag = false ;

} else {

System.out.print1n("输入的内容不允诗为空!");

} catch (IOException e){

System.out.print2 n(“输人的内容不允许为空!”);

return str_;

public class Inpututil {

private Inpututil (){}

public static string getstring(string prompt){

string str = null ;

boolean flag_= true ;

while(flag){

scanner input_= new Scanner(System.in);

System.out.print(prompt); if (input.hasNext()){

str= input.next().trim();

if (!"".equals(str)){7/’不是空字符串

flag = false ;//结束循环

}else {

System.out.println("输人的内容不允许为空!“)

图片63.png

图片64.png

package cn.mldn.demo.service.impl;

import cn.mldn.demo.service.IFileService;

import cn.mldn.demo.util.Inpututil;

public class FileServiceImpl implements IFileService {

private String name ;

private String content ;

public FileServiceImpl(){

this.name = Inpututil.getstring("请输入保存文件名称:");

this.content = InputUtil.getstring("请输入保存文件的内容:");

@Override public boolean save(){

return false;

图片65.png

相关文章
Yii2.0框架中如何进行路由设置?它支持哪些路由规则?
Yii2.0框架中如何进行路由设置?它支持哪些路由规则?
733 0
|
存储 安全 编译器
【Qt 底层机制之信号和槽 】深入探究Qt信号和槽背后的原理
【Qt 底层机制之信号和槽 】深入探究Qt信号和槽背后的原理
3485 4
|
开发框架 安全 编译器
【C/C++ 深入探讨构函数】C++ 编译器在什么情况下无法生成默认的析构函数?
【C/C++ 深入探讨构函数】C++ 编译器在什么情况下无法生成默认的析构函数?
356 1
|
1天前
|
数据采集 人工智能 安全
|
11天前
|
云安全 监控 安全
|
2天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
977 151
|
2天前
|
编解码 人工智能 机器人
通义万相2.6,模型使用指南
智能分镜 | 多镜头叙事 | 支持15秒视频生成 | 高品质声音生成 | 多人稳定对话
|
16天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1676 8
|
8天前
|
人工智能 自然语言处理 API
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸
一句话生成拓扑图!next-ai-draw-io 结合 AI 与 Draw.io,通过自然语言秒出架构图,支持私有部署、免费大模型接口,彻底解放生产力,绘图效率直接爆炸。
630 152