黑马程序员-IO流 01

----------------------- android培训java培训、java学习型技术博客、期待与您交流! ----------------------

IO(Input  Output)IO流用来处理设备之间的数据传输
Java对数据的操作是通过流的方式
Java用于操作流的对象都在IO包中
流按操作数据分为两种:字节流与字符流。
    通用:字节流,字符流基于字节流
流按流向分为:输入流,输出流。
1. IO流常用基类(父类)
字节流的抽象基类:
InputStream OutputStream字符流的抽象基类:
Reader , Writer注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。
如:InputStream的子类FileInputStream    Reader的子类FileReader
 
closeflush区别?
flush刷新后,流可以继续使用,close刷新后,会将流关闭。
2.字符流
 专门处理字符数据,文本数据
2.1字符流——创建文件
   创建流对象,建立数据存放文件。如果有,就直接覆盖
FileWriter fw = new FileWriter(“Test.txt”);
   调用流对象的写入方法,将数据写入流,流在机器的内存中
fw.write(“text”);
   关闭流资源,并将流中的数据清空到文件中。
fw.close();
不写close方法会有什么结果呢?
如果想在原有文件上继续加入新的数据呢?FileWriter fw = new FileWriter(“Test.txt”,true);
 
2.2 字符流——读取文件
    建立一个流对象,将已存在的一个文件加载进流。
FileReader fr = new FileReader(“Test.txt”);
    创建一个临时存放数据的数组。
char[] ch = new char[1024];
    调用流对象的读取方法将流中的数据读入到数组中。
fr.read(ch);
思考:
在加载文件时候是否是将文件全部加载进流
为什么定义数组,要定义多大呢?
 
注意:
定义文件路径时,可以用“/”或者“\\”在创建一个文件时,如果目录下有同名文件将被覆盖。
在读取文件时,必须保证该文件已存在,否则出异常。
 练习:ReaderFileReader的应用
import java.io.*;  
class FileReaderDemo  {  
                    //创建一个文件读取流对象,和指定名称的文件相关联。  
                   //要保证该文件是已经存在的,如果不存在,会发生异常FileNotFoundException 
                   FileReader fr = new FileReader("demo.txt");  
                   //调用读取流对象的read方法。  
                   //read():一次读一个字符。而且会自动往下读。  
                    
                   int ch = 0;  
                   while((ch=fr.read())!=-1)  {  
                            System.out.println("ch="+(char)ch); 
                   }               
                   fr.close();  
         }  
}  
/* 
第二种方式:通过字符数组进行读取。 
*/  
import java.io.*;  
class FileReaderDemo2  {  
         public static void main(String[] args) throws IOException  {  
                   FileReader fr = new FileReader("demo.txt");   
                   //定义一个字符数组。用于存储读到字符。  
                   //该read(char[])返回的是读到字符个数。  
                   char[]buf = new char[1024];  
   
                   int num = 0;  
                   while((num=fr.read(buf))!=-1)  {  //将读取到字符存入数组,返回读取的字符数,如果到达流的末尾返回-1
                            System.out.println(newString(buf,0,num));  
                   }   
                   fr.close();  
         }  
}  


3. IO异常的标准处理方式
import java.io.*;
class FileWriterDemo1 
{
	public static void main(String[] args) 
	{
//try外,声明变量,try内建立对象
		FileWriter fw = null;
		FileWriter fw1 = null;
		try{
		 fw = new FileWriter("demo.txt");
		 fw1 = new FileWriter("demo1.txt");
		 fw.write("sssss");
		 fw.flush();
 
		 fw1.write("kkkk");
		 fw1.flush();
		}catch(IOException e){
		   e.printStackTrace() ;
		}finally{
			try{
			  if(fw!=null)
			  fw.close();
			}catch(IOException e){
				 e.printStackTrace() ;
			}
 
			try{
			   if(fw1!=null)
				   fw1.close();
			}catch(IOException e){
				e.printStackTrace() ;
			}
		}	
	}
} 


4.字符流复制文本文件
练习:将C盘一个文本文件复制到D盘(两种方法)
 
/* 
复制的原理: 
其实就是将C盘下的文件数据存储到D盘的一个文件中。 
步骤: 
1,在D盘创建一个文件。用于存储C盘文件中的数据。 
2,定义读取流和C盘文件关联。 
3,通过不断的读写完成数据存储。 
4,关闭资源。 
*/    
import java.io.*;  
class CopyText  {  
         publicstatic void main(String[] args) throws IOException {  
                   copy_2( );  
         }  
 
         public static void copy_2()  {  
                   FileWriter fw = null;  
                   FileReader fr = null;  
                   try  {  
                            fw= new FileWriter("SystemDemo_copy.txt");  
                            fr= new FileReader("SystemDemo.java");  
   
                            char[] buf = new char[1024];  
   
                            int len = 0;  
                            while((len=fr.read(buf))!=-1)  {  
                                     fw.write(buf,0,len);  
                            }  
                   }  
                   catch(IOException e) {  
                            throw new RuntimeException("读写失败");   
                   }  
                   finally  {  
                            if(fr!=null)  
                                     try   {  
                                               fr.close();  
                                     }  
                                     catch(IOException e)  {  
                                     }  
                            if(fw!=null)  
                                     try   {  
                                               fw.close();  
                                     }  
                                     catch(IOException e) {  
                                     }  
                   }  
         }  
   
         //从C盘读一个字符,就往D盘写一个字符。  
         public static void copy_1( )throws IOException {  
                   //创建目的地。  
                   FileWriter fw = new FileWriter("RuntimeDemo_copy.txt");  
   
                   //与已有文件关联。  
                   FileReader fr = new FileReader("RuntimeDemo.java");  
   
                   int ch = 0;  
   
                   while((ch=fr.read())!=-1)  {  
                            fw.write(ch);  
                   }  
                   fw.close();  
                   fr.close();  
         }  
}  


5.字符流的缓冲区 
  |-- BufferedWriter 提高流的操作效率
     |-- 构造方法,传递一个字符输出流对象
     |-- 自己的方法 newLine()写一个换行,跨平台性
  |-- BufferedReader
     |-- 构造方法,传递一个字符输入流对象
     |-- 自己的方法 readLine()读取文本一行,返回字符串,没有换行符号,文件结尾返回null
练习:通过缓冲区复制一个.java文件
 
import java.io.*; 
class CopyTextByBuf  {  
         public static void main(String[] args)   {  
                   BufferedReader bufr = null;  
                   BufferedWriter bufw = null;  
   
                 try   {  
                bufr=newBufferedReader(newFileReader("BufferedWriterDemo.java"));  
                bufw= new BufferedWriter(new FileWriter("bufWriter_Copy.txt"));  
   
                            String line = null;   
                            while((line=bufr.readLine())!=null)   {  
                                     bufw.write(line);  
                                     bufw.newLine();  
                                     bufw.flush();  
                            }  
                   }  
                   catch(IOException e) {  
                            throw new RuntimeException("读写失败");  
                   }  
                   finally  {  
                            try  {  
                                     if(bufr!=null)  
                                               bufr.close();  
                            }  
                            catch(IOException e)  {  
                                     throw new RuntimeException("读取关闭失败");  
                            }  
                            try {  
                                     if(bufw!=null)  
                                               bufw.close();  
                            }  
                            catch(IOException e)  {  
                                     throw new RuntimeException("写入关闭失败");  
                            }  
                   }  
         }  
}  


6.装饰设计模式
    当想要对已有的对象进行功能增强时,可以定义类,将已有对象传入,基于已有的功能,并提供加强功能。那么自定义的该类称为装饰类
装饰类通常会通过构造方法接收被装饰的对象,并基于被装饰的对象的功能,提供更强的功能
class Person{
	public void eat(){
		System.out.println("人要吃饭");
	}
}
class NewPerson{
//扩展一下原有的人的吃饭功能
//如果没有原有的人的吃饭的功能,这个类独立存在就没有意义了
//出现增强了原有人类的吃饭的功能, 装饰类:增强原有对象中的功能
//设计思想,解决原有对象中功能不够,不能修改源码,采用一个装饰类,增强功能
	private Person p;
	NewPerson(Person p){ this.p = p;}
	public void newEat(){
		System.out.println("开胃小点心");
		p.eat();
		System.out.println("水果");
		System.out.println("吸烟");
	}
}
public class Demo {
	public static void main(String[] args) {
		NewPerson np = new NewPerson(new Person());
		np.newEat();
	}
}


问题:继承和装饰设计思想有什么区别
 *   继承是面向对象三大特征之一
 *   装饰:设计模式,解决实际的问题的
 
 * 继承的思想,解决一下IO流的问题
  abstract Reader
   文本输入流  TextReader(功能要扩展的话)
       搞一个类继承TextReader覆盖调用读取的方法
      
   音频输入流  AudioReader
       继承AudioReader 覆盖调用读取的方法
     
   动画输入流  MayaReader
       继承 MayaReader 覆盖调用读取的方法
     
   网络输入流 NetReader
       继承 NetReader  覆盖调用读取的方法
 
以上内容分析发现了一个问题,这个继承体系太大,过于臃肿,学习不容易,使用也不容易
===========================================================
 * 装饰设计思想,解决一下IO流的问题
abstract Reader
   文本输入流  TextReader
     
   音频输入流  AudioReader    
     
   动画输入流  MayaReader
      
   网络输入流 NetReader
 *  BufferedReader(Reader r) extends Reader 
提高的Reader类的读取功能read方法
这写功能read方法,会被所有的子类继承,并使用 
BufferedReaderReader r)中只要传入read的子类就可以,多态的应用
这样分析后,继承体系,简洁明了,容易学习,容易使用
练习:
模拟一个readLine方法
读取需要Reader类中的read()方法读取
import java.io.*;
public class MyReadLineDemo {
//定义Reader对象
	private Reader r;
//构造方法,对Reader对象进行赋值操作,传递的是Reader类型的子类对象
	public MyReadLineDemo(Reader r){ this.r = r;}
//开始模拟readLine
	public String myReadLine()throws IOException{
//定义一个字符串的缓冲区
		StringBuilder sb = new StringBuilder();
		int length = 0 ;
		while((length = r.read())!=-1){
//读取后的字符,赋值给了length变量
			if( length == '\r')
				continue;
			if( length == '\n')//这一行结束了
				return sb.toString();
//两次if都不成立,说明有效字符,存储到缓冲区
			sb.append((char)length);
		}
		if(sb.length()!=0)
			return sb.toString();
		return null;
	}
	public void myClose()throws IOException{ r.close();}
 
}
public class MyReadLineTest {
	public static void main(String[] args) throws IOException{
		MyReadLineDemo my = new MyReadLineDemo(new FileReader("c:\\buffered.txt"));
		String line = null;
		while((line = my.myReadLine())!=null){
			System.out.println(line);
		}
		my.myClose();
	}
}
----------------------- android培训java培训、java学习型技术博客、期待与您交流! ----------------------


 
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值