Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
java»ØÒ伡ªÊäÈëÊä³öÁ÷Ïêϸ½²½â£¨ÈëÞ­µä£©
 
×÷ÕߣºTheMrNice  À´Ô´£º²©¿Í ·¢²¼ÓÚ 2016-8-17
  2861  次浏览      27
 

Ò»¡¢Ê²Ã´ÊÇIO

JavaÖÐI/O²Ù×÷Ö÷ÒªÊÇָʹÓÃJava½øÐÐÊäÈ룬Êä³ö²Ù×÷¡£ JavaËùÓеÄI/O»úÖÆ¶¼ÊÇ»ùÓÚÊý¾ÝÁ÷½øÐÐÊäÈëÊä³ö£¬ÕâЩÊý¾ÝÁ÷±íʾÁË×Ö·û»òÕß×Ö½ÚÊý¾ÝµÄÁ÷¶¯ÐòÁС£

JavaµÄI/OÁ÷ÌṩÁ˶ÁдÊý¾ÝµÄ±ê×¼·½·¨¡£ÈκÎJavaÖбíʾÊý¾ÝÔ´µÄ¶ÔÏó¶¼»áÌṩÒÔÊý¾ÝÁ÷µÄ·½Ê½¶ÁдËüµÄÊý¾ÝµÄ·½·¨¡£

Java.ioÊÇ´ó¶àÊýÃæÏòÊý¾ÝÁ÷µÄÊäÈë/Êä³öÀàµÄÖ÷ÒªÈí¼þ°ü¡£

´ËÍ⣬JavaÒ²¶Ô¿é´«ÊäÌṩ֧³Ö£¬ÔÚºËÐÄ¿â java.nioÖвÉÓõıãÊÇ¿éIO¡£
JDK1.4°æ±¾¿ªÊ¼ÒýÈëÁËÐÂI/OÀà¿â£¬ËüλÓÚjava.nio°üÖУ¬ÐÂI/OÀà¿âÀûÓÃͨµÀºÍ»º³åÇøµÈÀ´Ìá¸ßI/O²Ù×÷µÄЧÂÊ¡£


Á÷IO¼òµ¥Ò×Óõ«Ð§Âʽϵ͡£

¿éIOЧÂʺܸߵ«±à³Ì±È½Ï¸´ÔÓ¡£

¶þ¡¢Java IOÄ£ÐÍ :

java I/O µÄÉè¼ÆÊ¹Óõ½ÁË Decorator(×°ÊÎÆ÷)ģʽ£¬°´¹¦ÄÜ»®·ÖStream£¬Äú¿ÉÒÔ¶¯Ì¬×°ÅäÕâЩ Stream£¬ÒÔ±ã»ñµÃÄúÐèÒªµÄ¹¦ÄÜ¡£

ÀýÈ磬ÄúÐèÒªÒ»¸ö¾ßÓлº³åµÄÎļþÊäÈëÁ÷£¬ÔòÓ¦µ±×éºÏʹÓÃFileInputStreamºÍBufferedInputStream¡£

Èý¡¢Êý¾ÝÁ÷µÄ»ù±¾¸ÅÄî

Êý¾ÝÁ÷ÊÇÒ»´®Á¬Ðø²»¶ÏµÄÊý¾ÝµÄ¼¯ºÏ£¬¾ÍÏóË®¹ÜÀïµÄË®Á÷£¬ÔÚË®¹ÜµÄÒ»¶ËÒ»µãÒ»µãµØ¹©Ë®£¬¶øÔÚË®¹ÜµÄÁíÒ»¶Ë¿´µ½µÄÊÇÒ»¹ÉÁ¬Ðø²»¶ÏµÄË®Á÷¡£

Êý¾ÝдÈë³ÌÐò¿ÉÒÔÊÇÒ»¶Î¡¢Ò»¶ÎµØÏòÊý¾ÝÁ÷¹ÜµÀÖÐдÈëÊý¾Ý£¬ÕâЩÊý¾Ý¶Î»á°´ÏȺó˳ÐòÐγÉÒ»¸ö³¤µÄÊý¾ÝÁ÷¡£

¶ÔÊý¾Ý¶ÁÈ¡³ÌÐòÀ´Ëµ£¬¿´²»µ½Êý¾ÝÁ÷ÔÚдÈëʱµÄ·Ö¶ÎÇé¿ö£¬Ã¿´Î¿ÉÒÔ¶ÁÈ¡ÆäÖеÄÈÎÒⳤ¶ÈµÄÊý¾Ý£¬µ«Ö»ÄÜÏȶÁÈ¡Ç°ÃæµÄÊý¾Ýºó£¬ÔÙ¶ÁÈ¡ºóÃæµÄÊý¾Ý¡£

²»¹ÜдÈëʱÊǽ«Êý¾Ý·Ö¶à´ÎдÈ룬»¹ÊÇ×÷Ϊһ¸öÕûÌåÒ»´ÎдÈ룬¶ÁȡʱµÄЧ¹û¶¼ÊÇÍêȫһÑùµÄ¡£

¡°Á÷ÊÇ´ÅÅÌ»òÆäËüÍâΧÉ豸Öд洢µÄÊý¾ÝµÄÔ´µã»òÖյ㡣¡±

ÔÚµçÄÔÉϵÄÊý¾ÝÓÐÈýÖÖ´æ´¢·½Ê½£¬Ò»ÖÖÊÇÍâ´æ£¬Ò»ÖÖÊÇÄڴ棬һÖÖÊÇ»º´æ¡£

±ÈÈçµçÄÔÉϵÄÓ²ÅÌ£¬´ÅÅÌ£¬UÅ̵ȶ¼ÊÇÍâ´æ£¬ÔÚµçÄÔÉÏÓÐÄÚ´æÌõ£¬»º´æÊÇÔÚCPUÀïÃæµÄ¡£

Íâ´æ¡¢ÄÚ´æ¡¢»º´æµÄ±È½Ï

´æ´¢Á¿£¨ÒÀ´ÎµÝ¼õ£©£º    Íâ´æ-->ÄÚ´æ-->»º´æ

¶ÁÈ¡ËÙ¶È£¨ÒÀ´ÎµÝ¼õ£©£º »º´æ-->ÄÚ´æ-->Íâ´æ

¶ÔÓÚÄÚ´æºÍÍâ´æµÄÀí½â£¬ÎÒÃÇ¿ÉÒÔ¼òµ¥µÄÀí½âΪÈÝÆ÷£¬¼´Íâ´æÊÇÒ»¸öÈÝÆ÷£¬ÄÚ´æÓÖÊÇÁíÍâÒ»¸öÈÝÆ÷¡£

ÔÚJavaÀà¿âÖУ¬IO²¿·ÖµÄÄÚÈÝÊǺÜÅÓ´óµÄ£¬ÒòΪËüÉæ¼°µÄÁìÓòºÜ¹ã·º:

±ê×¼ÊäÈëÊä³ö£¬ÎļþµÄ²Ù×÷£¬ÍøÂçÉϵÄÊý¾ÝÁ÷£¬×Ö·û´®Á÷£¬¶ÔÏóÁ÷£¬zipÎļþÁ÷µÈµÈ£¬javaÖн«ÊäÈëÊä³ö³éÏó³ÆÎªÁ÷£¬¾ÍºÃÏñË®¹Ü£¬½«Á½¸öÈÝÆ÷Á¬½ÓÆðÀ´¡£½«Êý¾Ý³åÍâ´æÖжÁÈ¡µ½ÄÚ´æÖеijÆÎªÊäÈëÁ÷£¬½«Êý¾Ý´ÓÄÚ´æÐ´ÈëÍâ´æÖеijÆÎªÊä³öÁ÷¡£

Á÷ÊÇÒ»¸öºÜÐÎÏóµÄ¸ÅÄµ±³ÌÐòÐèÒª¶ÁÈ¡Êý¾ÝµÄʱºò£¬¾Í»á¿ªÆôÒ»¸öͨÏòÊý¾ÝÔ´µÄÁ÷£¬Õâ¸öÊý¾ÝÔ´¿ÉÒÔÊÇÎļþ£¬Äڴ棬»òÊÇÍøÂçÁ¬½Ó¡£ÀàËÆµÄ£¬µ±³ÌÐòÐèҪдÈëÊý¾ÝµÄʱºò£¬¾Í»á¿ªÆôÒ»¸öͨÏòÄ¿µÄµØµÄÁ÷¡£

»ù±¾Á÷£º

Ò»×éÓÐÐò£¬ÓÐÆðµãºÍÖÕµãµÄ×Ö½ÚµÄÊý¾ÝÐòÁС£°üÀ¨ÊäÈëÁ÷ºÍÊä³öÁ÷¡£

ÊäÈëÁ÷£º

 ³ÌÐò´ÓÊäÈëÁ÷¶ÁÈ¡Êý¾ÝÔ´¡£Êý¾ÝÔ´°üÀ¨Íâ½ç(¼üÅÌ¡¢Îļþ¡¢ÍøÂç¡­)£¬
¼´Êǽ«Êý¾ÝÔ´¶ÁÈëµ½³ÌÐòµÄͨÐÅͨµÀ¡£

Êä³öÁ÷£º

 ³ÌÐòÏòÊä³öÁ÷дÈëÊý¾Ý¡£
½«³ÌÐòÖеÄÊý¾ÝÊä³öµ½Íâ½ç£¨ÏÔʾÆ÷¡¢´òÓ¡»ú¡¢Îļþ¡¢ÍøÂç¡­£©µÄͨÐÅͨµÀ¡£

³ÌÐòÏòÊä³öÁ÷дÈëÊý¾Ý¡£½«³ÌÐòÖеÄÊý¾ÝÊä³öµ½Íâ½ç£¨ÏÔʾÆ÷¡¢´òÓ¡»ú¡¢Îļþ¡¢ÍøÂç¡­£©µÄͨÐÅͨµÀ¡£

ΪʲôÉè¼Æ³ÉÊý¾ÝÁ÷ÄØ£¿

Input Stream²»¹ØÐÄÊý¾ÝÔ´À´×ÔºÎÖÖÉ豸£¨¼üÅÌ£¬Îļþ£¬ÍøÂ磩

Output Stream²»¹ØÐÄÊý¾ÝµÄÄ¿µÄÊǺÎÖÖÉ豸£¨¼üÅÌ£¬Îļþ£¬ÍøÂ磩

²ÉÓÃÊý¾ÝÁ÷µÄÄ¿µÄ¾ÍÊÇʹµÃÊä³öÊäÈë¶ÀÁ¢ÓÚÉ豸¡£

ËÄ¡¢I/OÌåϵ½á¹¹

¼òµ¥½éÉÜÏÂÉÏͼ£º

ÄãÓÐûÓз¢ÏÖ£¬¶¼ÊdzɶԳöÏֵģ¬ ³õѧÕ߾ͺÜÈÝÒ×»ìÏý£¬·Ö²»ÇåÊÇ×Ö½ÚÁ÷»¹ÊÇ×Ö·ûÁ÷£¬´ó¼ÒÖ»ÐèÒª¿´×îºóÕâ¸öµ¥´Ê£¬Èç¹ûÊÇ Stream µÄ»°¾ÍÊÇ×Ö½ÚÁ÷£¬Èç¹ûÊÇ Reader/Writer µÄ»°¾ÍÊÇ×Ö·ûÁ÷¡£

ÔÚÕû¸öJava.io°üÖÐ×îÖØÒªµÄ¾ÍÊÇ5¸öÀàºÍÒ»¸ö½Ó¿Ú¡£5¸öÀàÖ¸µÄÊÇFile¡¢OutputStream¡¢InputStream¡¢Writer¡¢Reader£»Ò»¸ö½Ó¿ÚÖ¸µÄÊÇSerializable.ÕÆÎÕÁËÕâЩIOµÄºËÐIJÙ×÷ÄÇô¶ÔÓÚJavaÖеÄIOÌåϵҲ¾ÍÓÐÁËÒ»¸ö³õ²½µÄÈÏʶÁË

Java I/OÖ÷Òª°üÀ¨Èçϼ¸¸ö²ã´Î£¬°üº¬Èý¸ö²¿·Ö£º

1.Á÷ʽ²¿·Ö¨D¨DIOµÄÖ÷Ì岿·Ö£»

2.·ÇÁ÷ʽ²¿·Ö¨D¨DÖ÷Òª°üº¬Ò»Ð©¸¨ÖúÁ÷ʽ²¿·ÖµÄÀ࣬È磺FileÀà¡¢RandomAccessFileÀàºÍFileDescriptorµÈÀࣻ

3.ÆäËûÀà¨CÎļþ¶ÁÈ¡²¿·ÖµÄÓ밲ȫÏà¹ØµÄÀ࣬È磺SerializablePermissionÀ࣬ÒÔ¼°Óë±¾µØ²Ù×÷ϵͳÏà¹ØµÄÎļþϵͳµÄÀ࣬È磺FileSystemÀàºÍWin32FileSystemÀàºÍWinNTFileSystemÀà¡£

Á÷ʽ²¿·ÖÖ÷ÒªÀࣺ

JavaÖÐ×Ö·ûÊDzÉÓÃUnicode±ê×¼£¬Ò»¸ö×Ö·ûÊÇ16룬¼´Ò»¸ö×Ö·ûʹÓÃÁ½¸ö×Ö½ÚÀ´±íʾ¡£Îª´Ë£¬JAVAÖÐÒýÈëÁË´¦Àí×Ö·ûµÄÁ÷¡£

¶ÔÎļþ½øÐвÙ×÷£º

FileInputStream£¨×Ö½ÚÊäÈëÁ÷£©£¬
FileOutputStream£¨×Ö½ÚÊä³öÁ÷£©£¬
FileReader£¨×Ö·ûÊäÈëÁ÷£©£¬
FileWriter£¨×Ö·ûÊä³öÁ÷£©

¶Ô¹ÜµÀ½øÐвÙ×÷£º

PipedInputStream£¨×Ö½ÚÊäÈëÁ÷£©,
PipedOutStream£¨×Ö½ÚÊä³öÁ÷£©£¬
PipedReader£¨×Ö·ûÊäÈëÁ÷£©£¬
PipedWriter£¨×Ö·ûÊä³öÁ÷£©

PipedInputStreamµÄÒ»¸öʵÀýÒªºÍPipedOutputStreamµÄÒ»¸öʵÀý¹²Í¬Ê¹Ó㬹²Í¬Íê³É¹ÜµÀµÄ¶ÁȡдÈë²Ù×÷¡£Ö÷ÒªÓÃÓÚÏ̲߳Ù×÷¡£

×Ö½Ú/×Ö·ûÊý×飺

ByteArrayInputStream£¬ByteArrayOutputStream£¬CharArrayReader£¬
CharArrayWriterÊÇÔÚÄÚ´æÖпª±ÙÁËÒ»¸ö×Ö½Ú»ò×Ö·ûÊý×é¡£

Buffered»º³åÁ÷£º

BufferedInputStream£¬BufferedOutputStream£¬BufferedReader,BufferedWriter,
ÊÇ´ø»º³åÇøµÄ´¦ÀíÁ÷£¬»º³åÇøµÄ×÷ÓõÄÖ÷ҪĿµÄÊÇ£º±ÜÃâÿ´ÎºÍÓ²ÅÌ´ò½»µÀ£¬
Ìá¸ßÊý¾Ý·ÃÎʵÄЧÂÊ¡£

ת»¯Á÷£º

InputStreamReader/OutputStreamWriter£¬°Ñ×Ö½Úת»¯³É×Ö·û¡£

 

Êý¾ÝÁ÷£º

DataInputStream£¬DataOutputStream¡£

ÒòΪƽʱÈôÊÇÎÒÃÇÊä³öÒ»¸ö8¸ö×Ö½ÚµÄlongÀàÐÍ»ò4¸ö×Ö½ÚµÄfloatÀàÐÍ£¬ÄÇÔõô°ìÄØ£¿

¿ÉÒÔÒ»¸ö×Ö½ÚÒ»¸ö×Ö½ÚÊä³ö£¬Ò²¿ÉÒÔ°Ñת»»³É×Ö·û´®Êä³ö£¬µ«ÊÇÕâÑùת»»·Ñʱ¼ä£¬ÈôÊÇÖ±½ÓÊä³ö¸Ã¶àºÃ°¡£¬Òò´ËÕâ¸öÊý¾ÝÁ÷¾Í½â¾öÁËÎÒÃÇÊä³öÊý¾ÝÀàÐ͵ÄÀ§ÄÑ¡£

Êý¾ÝÁ÷¿ÉÒÔÖ±½ÓÊä³öfloatÀàÐÍ»òlongÀàÐÍ£¬Ìá¸ßÁËÊý¾Ý¶ÁдµÄЧÂÊ¡£

´òÓ¡Á÷£º

printStream£¬printWriter£¬Ò»°ãÊÇ´òÓ¡µ½¿ØÖÆÌ¨£¬¿ÉÒÔ½øÐпØÖÆ´òÓ¡µÄµØ·½¡£

¶ÔÏóÁ÷£º

ObjectInputStream£¬ObjectOutputStream£¬
°Ñ·â×°µÄ¶ÔÏóÖ±½ÓÊä³ö£¬¶ø²»ÊÇÒ»¸ö¸öÔÚת»»³É×Ö·û´®ÔÙÊä³ö¡£

ÐòÁл¯Á÷£º

SequenceInputStream¡£

¶ÔÏóÐòÁл¯£º°Ñ¶ÔÏóÖ±½Óת»»³É¶þ½øÖÆ£¬Ð´Èë½éÖÊÖС£

×¢£º

ʹÓöÔÏóÁ÷ÐèҪʵÏÖSerializable½Ó¿Ú£¬·ñÔò»á±¨´í¡£

¶øÈôÓÃtransient¹Ø¼ü×ÖÐÞÊγÉÔ±±äÁ¿£¬²»Ð´Èë¸Ã³ÉÔ±±äÁ¿£¬ÈôÊÇÒýÓÃÀàÐ͵ijÉÔ±±äÁ¿Îªnull£¬ÖµÀàÐ͵ijÉÔ±±äÁ¿Îª0.

·ÇÁ÷ʽ²¿·ÖÖ÷ÒªÀࣺ

File£¨ÎļþÌØÕ÷Óë¹ÜÀí£©£ºÓÃÓÚÎļþ»òÕßĿ¼µÄÃèÊöÐÅÏ¢£¬ÀýÈçÉú³ÉÐÂĿ¼£¬ÐÞ¸ÄÎļþÃû£¬É¾³ýÎļþ£¬ÅжÏÎļþËùÔÚ·¾¶µÈ¡£

RandomAccessFile£¨Ëæ»úÎļþ²Ù×÷£©£ºËüµÄ¹¦Äܷḻ£¬¿ÉÒÔ´ÓÎļþµÄÈÎÒâλÖýøÐдæÈ¡£¨ÊäÈëÊä³ö£©²Ù×÷¡£

FileÀࣺ

ÔÚJavaÓïÑÔµÄjava.io°üÖУ¬ÓÉFileÀàÌṩÁËÃèÊöÎļþºÍĿ¼µÄ²Ù×÷Óë¹ÜÀí·½·¨¡£

µ«FileÀ಻ÊÇInputStream¡¢OutputStream»òReader¡¢WriterµÄ×ÓÀ࣬ÒòΪËü²»¸ºÔðÊý¾ÝµÄÊäÈëÊä³ö£¬¶ø×¨ÃÅÓÃÀ´¹ÜÀí´ÅÅÌÎļþÓëĿ¼¡£

×÷ÓãºFileÀàÖ÷ÒªÓÃÓÚÃüÃûÎļþ¡¢²éѯÎļþÊôÐԺʹ¦ÀíÎļþĿ¼¡£

FileÀ๲ÌṩÁËËĸö²»Í¬µÄ¹¹Ô캯Êý£¬ÒÔ²»Í¬µÄ²ÎÊýÐÎʽÁé»îµØ½ÓÊÕÎļþºÍĿ¼ÃûÐÅÏ¢¡£¹¹Ô캯Êý£º

1£©File (String pathname)

Àý:File  f1=new File("FileTest1.txt");
//´´½¨Îļþ¶ÔÏóf1£¬f1ËùÖ¸µÄÎļþÊÇÔÚµ±Ç°Ä¿Â¼Ï´´½¨µÄFileTest1.txt

 

2£©File£¨URI uri£©

3£©File (String parent , String child)

Àý:File f2=new  File(¡°D:\\dir1","FileTest2.txt") 
;// ×¢Ò⣺D:\\dir1Ŀ¼ÊÂÏȱØÐë´æÔÚ£¬·ñÔòÒì³£

4£©File (File parent , String child)

Àý:  File  f4=new File("E£º\\dir3");
File f5=new File(f4,"FileTest5.txt");
//ÔÚÈç¹û E£º\\dir3Ŀ¼²»´æÔÚÔòÐèÒªÏÈʹÓÃf4.mkdir()ÏÈ´´½¨

Ò»¸ö¶ÔÓ¦ÓÚij´ÅÅÌÎļþ»òĿ¼µÄFile¶ÔÏóÒ»¾­´´½¨£¬ ¾Í¿ÉÒÔͨ¹ýµ÷ÓÃËüµÄ·½·¨À´»ñµÃÎļþ»òĿ¼µÄÊôÐÔ¡£

1£©public boolean exists( ) ÅжÏÎļþ»òĿ¼ÊÇ·ñ´æÔÚ

2£©public boolean isFile( ) ÅжÏÊÇÎļþ»¹ÊÇĿ¼

3£©public boolean isDirectory( ) ÅжÏÊÇÎļþ»¹ÊÇĿ¼

4£©public String getName( ) ·µ»ØÎļþÃû»òĿ¼Ãû

5£©public String getPath( ) ·µ»ØÎļþ»òĿ¼µÄ·¾¶¡£

6£©public long length( ) »ñÈ¡ÎļþµÄ³¤¶È

7£©public String[ ] list ( ) ½«Ä¿Â¼ÖÐËùÓÐÎļþÃûºÍĿ¼Ãû±£´æÔÚ×Ö·û´®Êý×éÖзµ»Ø¡£

8£©public File[] listFiles() ·µ»ØÄ³¸öĿ¼ÏÂËùÓÐÎļþºÍĿ¼µÄ¾ø¶Ô·¾¶£¬·µ»ØµÄÊÇFileÊý×é

9£©public String getAbsolutePath() ·µ»ØÎļþ»òĿ¼µÄ¾ø¶Ô·¾¶

....
FileÀàÖл¹¶¨ÒåÁËһЩ¶ÔÎļþ»òĿ¼½øÐйÜÀí¡¢²Ù×÷µÄ·½·¨£¬³£Óõķ½·¨ÓУº
1£© public boolean renameTo( File newFile ); ÖØÃüÃûÎļþ

2£© public void delete( ); ɾ³ýÎļþ

3£© public boolean mkdir( ); ´´½¨Ä¿Â¼

4£©public boolean createNewFile(); ´´½¨Îļþ

Àý×Ó£ºÊä³öÒ»¸öĿ¼ÖеÄËùÓÐÎļþÃû£¨Ä¿Â¼¿ÉÄÜÊǶ༶Ŀ¼£¬ÈçaĿ¼ÖÐÓÐb¡¢cĿ¼¡£¡£¡££©

FileUtils.java

public class FileUtils {

public static void listDir(String dir) throws IOException {
File file = new File(dir);
//´«½øÀ´µÄ¿ÉÄܲ»ÊÇÒ»¸öĿ¼
if (!file.isDirectory()) {
throw new IOException(dir+"²»ÊÇĿ¼");
}
//´«½øÀ´µÄ¿ÉÄÜÊÇÒ»¸ö´íÎóµÄ·¾¶
if (file == null) {
throw new IOException("ûÓдË·¾¶");
}
File[] files = file.listFiles();
for (File f : files) {
//ÓпÉÄÜÊÇÒ»¸ö¶à¼¶Ä¿Â¼£¬µÝ¹éµ÷ÓÃ
if (f.isDirectory()) {
listDir(f.getAbsolutePath());
//ÊÇÎļþ¾ÍÖ±½ÓÊä³ö¸ÃÎļþµÄ¾ø¶Ô·¾¶
}else {
System.out.println(f.getAbsolutePath());
}
}
}
}

Main.java

public class Main {

public static void main(String[] args) throws IOException {
FileUtils.listDir("E:\\ssh");
}
}

½á¹û£º

ÕâÀï¾Í²»¶à½âÊÍÁË£¬Ó¦¸Ã±È½Ï¼òµ¥£¬´úÂëÖÐÒ²ÓÐÏêϸעÊÍ¡£

Îå¡¢¼¸ÖÖÁ÷µÄ½éÉÜ

1¡¢InputStream³éÏóÀà

InputStream Ϊ×Ö½ÚÊäÈëÁ÷£¬Ëü±¾ÉíΪһ¸ö³éÏóÀ࣬±ØÐëÒÀ¿¿Æä×ÓÀàʵÏÖ¸÷ÖÖ¹¦ÄÜ£¬´Ë³éÏóÀàÊDZíʾ×Ö½ÚÊäÈëÁ÷µÄËùÓÐÀàµÄ³¬Àà¡£

¼Ì³Ð×ÔInputStream µÄÁ÷¶¼ÊÇÏò³ÌÐòÖÐÊäÈëÊý¾ÝµÄ£¬ÇÒÊý¾Ýµ¥Î»Îª×Ö½Ú£¨8bit£©£»

InputStreamÊÇÊäÈë×Ö½ÚÊý¾ÝÓõÄÀ࣬ËùÒÔInputStreamÀàÌṩÁË3ÖÖÖØÔØµÄread·½·¨.InputstreamÀàÖеij£Ó÷½·¨£º

¡¡¡¡

¡¡¡¡£¨1£© public abstract int read( )£º¶Áȡһ¸öbyteµÄÊý¾Ý£¬·µ»ØÖµÊǸßλ²¹0µÄintÀàÐÍÖµ¡£Èô·µ»ØÖµ=-1˵Ã÷ûÓжÁÈ¡µ½ÈκÎ×Ö½Ú¶ÁÈ¡¹¤×÷½áÊø¡£

¡¡¡¡

¡¡¡¡£¨2£© public int read(byte b[ ])£º¶ÁÈ¡b.length¸ö×Ö½ÚµÄÊý¾Ý·Åµ½bÊý×éÖС£·µ»ØÖµÊǶÁÈ¡µÄ×Ö½ÚÊý¡£¸Ã·½·¨Êµ¼ÊÉÏÊǵ÷ÓÃÏÂÒ»¸ö·½·¨ÊµÏÖµÄ

¡¡¡¡

¡¡¡¡£¨3£© public int read(byte b[ ], int off, int len)£º´ÓÊäÈëÁ÷ÖÐ×î¶à¶ÁÈ¡len¸ö×Ö½ÚµÄÊý¾Ý£¬´æ·Åµ½Æ«ÒÆÁ¿ÎªoffµÄbÊý×éÖС£

¡¡¡¡

¡¡¡¡£¨4£© public int available( )£º·µ»ØÊäÈëÁ÷ÖпÉÒÔ¶ÁÈ¡µÄ×Ö½ÚÊý¡£×¢Ò⣺ÈôÊäÈë×èÈû£¬µ±Ç°Ï߳̽«±»¹ÒÆð£¬Èç¹ûInputStream¶ÔÏóµ÷ÓÃÕâ¸ö·½·¨µÄ»°£¬ËüÖ»»á·µ»Ø0£¬Õâ¸ö·½·¨±ØÐëÓɼ̳ÐInputStreamÀàµÄ×ÓÀà¶ÔÏóµ÷ÓòÅÓÐÓã¬

¡¡¡¡

¡¡¡¡£¨5£© public long skip(long n)£ººöÂÔÊäÈëÁ÷ÖеÄn¸ö×Ö½Ú£¬·µ»ØÖµÊÇʵ¼ÊºöÂÔµÄ×Ö½ÚÊý, Ìø¹ýһЩ×Ö½ÚÀ´¶ÁÈ¡

¡¡¡¡

¡¡¡¡£¨6£© public int close( ) £ºÎÒÃÇÔÚʹÓÃÍêºó£¬±ØÐë¶ÔÎÒÃÇ´ò¿ªµÄÁ÷½øÐйرÕ.

Ö÷ÒªµÄ×ÓÀࣺ

1£© FileInputStream£º°ÑÒ»¸öÎļþ×÷ΪInputStream£¬ÊµÏÖ¶ÔÎļþµÄ¶ÁÈ¡²Ù×÷     

2£© ByteArrayInputStream£º°ÑÄÚ´æÖеÄÒ»¸ö»º³åÇø×÷ΪInputStreamʹÓÃ

3£© StringBufferInputStream£º°ÑÒ»¸öString¶ÔÏó×÷ΪInputStream

4£© PipedInputStream£ºÊµÏÖÁËpipeµÄ¸ÅÄÖ÷ÒªÔÚÏß³ÌÖÐʹÓÃ

5£© SequenceInputStream£º°Ñ¶à¸öInputStreamºÏ²¢ÎªÒ»¸öInputStrea

2¡¢OutputStream³éÏóÀà

OutputStreamÌṩÁË3¸öwrite·½·¨À´×öÊý¾ÝµÄÊä³ö£¬Õâ¸öÊǺÍInputStreamÊÇÏà¶ÔÓ¦µÄ¡£

¡¡¡¡

¡¡¡¡£¨1£© public void write(byte b[ ])£º½«²ÎÊýbÖеÄ×Ö½Úдµ½Êä³öÁ÷¡£

¡¡¡¡

¡¡¡¡£¨2£©public void write(byte b[ ], int off, int len) £º½«²ÎÊýbµÄ´ÓÆ«ÒÆÁ¿off¿ªÊ¼µÄlen¸ö×Ö½Úдµ½Êä³öÁ÷¡£

¡¡¡¡

¡¡¡¡£¨3£© public abstract void write(int b) £ºÏȽ«intת»»ÎªbyteÀàÐÍ£¬°ÑµÍ×Ö½ÚдÈëµ½Êä³öÁ÷ÖС£

¡¡¡¡

¡¡¡¡£¨4£©public void flush( ) : ½«Êý¾Ý»º³åÇøÖÐÊý¾ÝÈ«²¿Êä³ö£¬²¢Çå¿Õ»º³åÇø¡£

¡¡¡¡

¡¡¡¡£¨5£© public void close( ) : ¹Ø±ÕÊä³öÁ÷²¢ÊÍ·ÅÓëÁ÷Ïà¹ØµÄϵͳ×ÊÔ´¡£

Ö÷ÒªµÄ×ÓÀࣺ

1) ByteArrayOutputStream£º°ÑÐÅÏ¢´æÈëÄÚ´æÖеÄÒ»¸ö»º³åÇøÖÐ 

2) FileOutputStream£º°ÑÐÅÏ¢´æÈëÎļþÖÐ

3) PipedOutputStream£ºÊµÏÖÁËpipeµÄ¸ÅÄÖ÷ÒªÔÚÏß³ÌÖÐʹÓÃ

4) SequenceOutputStream£º°Ñ¶à¸öOutStreamºÏ²¢ÎªÒ»¸öOutStream

×¢£º

Á÷½áÊøµÄÅжϣº·½·¨read()µÄ·µ»ØÖµÎª-1ʱ£»readLine()µÄ·µ»ØÖµÎªnullʱ¡£

3¡¢FileInputStreamÎļþÊäÈëÁ÷

FileInputStream¿ÉÒÔʹÓÃread()·½·¨Ò»´Î¶ÁÈëÒ»¸ö×Ö½Ú£¬²¢ÒÔintÀàÐÍ·µ»Ø£¬»òÕßÊÇʹÓÃread()·½·¨Ê±¶ÁÈëÖÁÒ»¸öbyteÊý×飬byteÊý×éµÄÔªËØÓжàÉÙ¸ö£¬¾Í¶ÁÈë¶àÉÙ¸ö×Ö½Ú¡£

ÔÚ½«Õû¸öÎļþ¶ÁÈ¡Íê³É»òдÈëÍê±ÏµÄ¹ý³ÌÖУ¬Õâôһ¸öbyteÊý×éͨ³£±»µ±×÷»º³åÇø£¬ÒòΪÕâôһ¸öbyteÊý×éͨ³£°çÑݳнÓÊý¾ÝµÄÖмä½ÇÉ«¡£

×÷ÓãºÒÔÎļþ×÷ΪÊý¾ÝÊäÈëÔ´µÄÊý¾ÝÁ÷¡£»òÕß˵ÊÇ´ò¿ªÎļþ£¬´ÓÎļþ¶ÁÊý¾Ýµ½ÄÚ´æµÄÀà¡£

ʹÓ÷½·¨£º

FileInputStream fis = new FileInputStream(¡°E£º\a.txt¡±);

»ò FileInputStream fis = new FileInputStream(¡°E£º/a.txt¡±);

µ±È»Ò²¿ÉÒÔ´«Ò»¸ö File £¬Ëü»¹Óкöà¸ö¹¹ÔìÆ÷¡£´ó¼Ò¿ÉÒÔ¿´¿´Ô´ÂëÓ¦¸Ã¾Í¶®ÁË¡£

Àý×Ó£º

½«a.txtµÄÄÚÈÝÏÔʾÔÚÏÔʾÆ÷ÉÏ

public class FileInputStreamDemo {

public static void main(String[] args) throws IOException {

FileInputStream fis = new FileInputStream("a.txt");
int a;
while ((a = fis.read()) != -1) {
System.out.print((char)a);
}
}
}

½á¹û£º

Èç¹û½« System.out.print((char)a) ¸Ä³É System.out.print(a) ÓÖ»áÊÇÔõÑùÄØ£¿

Ôõô»ØÊÂÄØ£¿²»ÊÇ×Ö½ÚÁ÷Â𣿶Á³öÀ´²»¾ÍÊÇÒ»¸ö×Ö½Ú£¬ÔõôÊä³öÒ»¸öÕûÊýÁËÄØ£¿

´ð£ºread£¨£©·½·¨È·ÊµÊǶÁȡһ¸ö×Ö½Ú£¬µ«·µ»ØÖµÊÇ int ÀàÐ͵ģ¬»á½«È¡³öÀ´µÄÒ»¸ö×Ö½Ú¸ßλ»á²¹ 0 ³ÉÒ»¸ö int ÐÍ¡£ËùÒÔÊä³öÀ´µÄÓ¦¸ÃÕâ¸öÊý¾ÝµÄ ASCII Âë¡£

ʹÓüüÅÌÊäÈëÒ»¶ÎÖÐÎIJ¢Êä³öµ½¿ØÖÆÌ¨£¬¿´¿´»áÊÇÔõÑù£¿

public class FileInputStreamDemo {

public static void main(String[] args) throws IOException {
int a;
while ((a = System.in.read()) != -1) {
System.out.print(a);
}
}
}

¿ÉÒԲµ½Ó¦¸Ã»áÊä³öһЩÕûÊý¼´ ASCII Â룬ÒòΪ¶ÁµÄʱºòÊÇÒ»¸ö×Ö½ÚÒ»¸ö×ֽڵĶÁ£¬¶øÖÐÎÄÓÖ²»Ö¹Ò»¸ö×Ö½Ú£¬µ½µ×Òª¼¸¸ö×Ö½ÚÀ´±íʾ£¬ÕâҪȡ¾öÓÚ±àÂ뼯£¨ÎÒÕâÀïµÄÊDzð³ÉÁËÈý¸ö×Ö½Ú£¬Á½¸ö×Ö½ÚÊÇÓÃÀ´±ê¼ÇÒ»Ðеģ©¡£·´Õý»á²ð³É¼¸¸ö×Ö½ÚÀ´¶Á¡£

½á¹û£º

ÄÇôÈç¹ûǿת³É char ÀàÐÍÓÖ»áÔõÑùÄØ£¿

public class FileInputStreamDemo {

public static void main(String[] args) throws IOException {
int a;
while ((a = System.in.read()) != -1) {
System.out.print((char)a);
}
}
}

½á¹û£º

ÎÒÃÇ¿´µ½ÊäÈë¹þ£¬Êä³ö?£¬µ«Õâ²¢²»ÊÇÎÒÃÇÏëÒªµÄ¡£ÎªÊ²Ã´»áÕâÑùÄØ£¿ÎÒÃÇÀ´¿´Ò»Ï ? µÄ ASCII Â룬¸ÕºÃÊÇ 229£¬ÕâÎÒÃǾÍÖªµÀËüֻȡÁ˵ÚÒ»×Ö½ÚASCIIÂë¶ÔÓ¦µÄ×Ö·û¡£

ASCII Âë±í¿ÉÔÚÎÄÕÂ×îºó²é¿´¡£

4¡¢FileOutputStreamÎļþÊä³öÁ÷

FileOutputStreamÀàÓÃÀ´´¦ÀíÒÔÎļþ×÷ΪÊý¾ÝÊä³öÄ¿µÄÊý¾ÝÁ÷£»Ò»¸ö±íʾÎļþÃûµÄ×Ö·û´®£¬Ò²¿ÉÒÔÊÇFile»òFileDescriptor¶ÔÏó¡£

×÷ÓãºÓÃÀ´´¦ÀíÒÔÎļþ×÷ΪÊý¾ÝÊä³öÄ¿µÄÊý¾ÝÁ÷£»»òÕß˵ÊÇ´ÓÄÚ´æÇø¶ÁÊý¾Ýµ½Îļþ

´´½¨ÎļþÁ÷µÄ·½Ê½£º

1£©FileOutputStream(File file)

´´½¨Ò»¸öÏòÖ¸¶¨ File ¶ÔÏó±íʾµÄÎļþÖÐдÈëÊý¾ÝµÄÎļþÊä³öÁ÷¡£

Àý£º File f=new File (¡°d:/myjava/write.txt ¡°);

FileOutputStream out= new FileOutputStream (f);

2£©FileOutputStream(File file, boolean append)

´´½¨Ò»¸öÏòÖ¸¶¨ File ¶ÔÏó±íʾµÄÎļþÖÐдÈëÊý¾ÝµÄÎļþÊä³öÁ÷¡£ append±íʾÄÚÈÝÊÇ·ñ×·¼Ó

3£©FileOutputStream(FileDescriptor fdObj)

´´½¨Ò»¸öÏòÖ¸¶¨ÎļþÃèÊö·û´¦Ð´ÈëÊý¾ÝµÄÊä³öÎļþÁ÷£¬¸ÃÎļþÃèÊö·û±íʾһ

¸öµ½ÎļþϵͳÖеÄij¸öʵ¼ÊÎļþµÄÏÖÓÐÁ¬½Ó¡£

4£©FileOutputStream(String name)

´´½¨Ò»¸öÏò¾ßÓÐÖ¸¶¨Ãû³ÆµÄÎļþÖÐдÈëÊý¾ÝµÄÊä³öÎļþÁ÷¡£

Àý£ºFileOutputStream out=new FileOutputStream(¡°d:/myjava/write.txt ¡°);

5£©FileOutputStream(String name, boolean append)

´´½¨Ò»¸öÏò¾ßÓÐÖ¸¶¨ name µÄÎļþÖÐдÈëÊý¾ÝµÄÊä³öÎļþÁ÷¡£ append±íʾÄÚÈÝÊÇ·ñ×·¼Ó

×¢£º

£¨1£©ÎļþÖÐдÊý¾Ýʱ£¬ÈôÎļþÒѾ­´æÔÚ£¬Ôò¸²¸Ç´æÔÚµÄÎļþ£»

£¨2£©µÄ¶Á/д²Ù×÷½áÊøÊ±£¬Ó¦µ÷ÓÃclose·½·¨¹Ø±ÕÁ÷¡£

Àý×Ó£º

ʹÓüüÅÌÊäÈëÒ»¶ÎÄÚÈÝ£¬½«ÄÚÈݱ£´æÔÚÎļþwrite.txtÖÐ

public class FileOutputStreamDemo {

public static void main(String[] args) throws IOException {

FileOutputStream fos = new FileOutputStream("write.txt");
int a;
while ((a = System.in.read()) != -1) {
fos.write(a);
}
}
}

½á¹û£º

ÓÐͬѧ»áÎÊÁË£¬¸Õ²ÅÉÏÃæºº×ֵĶÁÈ¡²»ÊÇÒ»¸ö×Ö½ÚÒ»¸ö×Ö½Ú¶Á£¬´æµ½ÎļþÖеÄÓ¦¸ÃÒ²ÊÇÒ»¸ö×Ö½ÚÒ»¸ö×ֽڵģ¬ÄÇô²é¿´µÄʱºò²»Ó¦¸ÃÊÇÂÒÂëÂð£¿

´ð£º´Ó¼üÅ̶ÁÈ¡µÄʱºòȷʵÊÇÒ»¸ö×Ö½ÚÒ»¸ö×Ö½Ú¶ÁÈ¡£¬´æµÄʱºòÒ²ÊÇÒ»¸ö×Ö½ÚÒ»¸ö×ֽڴ棬ֻ²»¹ýËü»á¼Óµã±êÖ¾£¨²»Í¬µÄ±àÂ뼯±ê¼ÇµÄ·½Ê½¿ÉÄܲ»Ò»Ñù£©¡££¨ÎÒÕâÀïµÄ±àÂëÊÇÿ¸öºº×ÖÓÃÈý¸ö×Ö½Ú±àÂ룬ÓÃÁ½¸ö×Ö½ÚÀ´±ê¼ÇÒ»ÐУ©£¬µ½Ê±ºòÊä³öµÄʱºòËü¾Í»á¸ù¾Ý±ê¼ÇºÍºº×ÖËùÕ¼×Ö½ÚÊýÀ´Æ´½Ó³Éºº×Ö¡£

ÎÒÃÇÀ´Êä³ö¿´Ò»Ï£º

public class FileInputStreamDemo {

public static void main(String[] args) throws IOException {
//¹þ£º 229 147 136 13 10
//¹þ¹þ£º 229 147 136 229 147 136 13 10
//¹þ¹þ¹þ£º 229 147 136 229 147 136 229 147 136 13 10
//¹þ¹þ£¨Á½ÐУ©¹þ¹þ£º229 147 136 229 147 136 13 10 229 147 136 229 147 136 13 10
FileInputStream fis = new FileInputStream("a.txt");
int a;
while ((a = fis.read()) != -1) {
System.out.print(a+" ");
}
}
}

½á¹û£º

ÕâÀïµÄ½á¹ûÊǹþ¹þ£¨Á½ÐУ©¹þ¹þµÄÊä³ö½á¹û£¬µ±È»Ò²·Ö±ð²âÁËËÄÖÖÇé¿ö£¬ÎªÁ˸üºÃµÄ¶Ô±È£º

µ± a.txt µÄÄÚÈÝΪ¹þ¡¢¹þ¹þ¡¢¹þ¹þ¡¢¹þ¹þ£¨Á½ÐУ©¹þ¹þµÄʱºò£¬´æµÄʱºò¸÷ÊÇʲôÇé¿ö£¬´úÂëÖж¼Ð´ÁË£¬´ó¼Ò¿ÉÒÔ¿´¿´¡£¿ÉÒÔ·¢ÏÖ±ê¼ÇÒ»ÐеÄÊÇ13 10 ÕâÁ½¸ö×Ö½Ú¡£²»ÒªÎÊÎÒÕâÃ÷Ã÷¾ÍÊǸöÕûÊý²»ÊÇÕ¼4¸ö×Ö½Ú£¬ÎªÊ²Ã´ËµÊÇÒ»¸ö×Ö½Ú£¿read() µÄ·µ»ØÖµÎª int£¬È¡³öµÄ byte ¸ßλ²¹0³Éint¡£ÄÇôÔõôƴ½ÓµÄÄØ£¿±ÈÈ磺ÄÚÈÝΪ¹þµÄʱºò£¬Ê×ÏÈÕÒµ½±ê¼ÇµÄλÖã¬Óã¨ËùÕ¼×Ö½ÚÊý-2£©/3=ºº×ֵĸöÊý£¬¶øÃ¿¸öºº×ÖÕ¼Èý¸ö×Ö½Ú£¬Õâ²»¾Í¿ÉÒÔÈý¸öÈý¸ö×Ö½ÚÆ´½Ó³öÀ´ÁËÂð¡£

5¡¢»º³åÊäÈëÊä³öÁ÷ BufferedInputStream/ BufferedOutputStream£¨Ò²³Æ°ü×°Á÷£©

¼ÆËã»ú·ÃÎÊÍⲿÉ豸·Ç³£ºÄʱ¡£·ÃÎÊÍâ´æµÄƵÂÊÔ½¸ß£¬Ôì³ÉCPUÏÐÖõĸÅÂʾÍÔ½´ó¡£

ΪÁ˼õÉÙ·ÃÎÊÍâ´æµÄ´ÎÊý£¬Ó¦¸ÃÔÚÒ»´Î¶ÔÍâÉèµÄ·ÃÎÊÖУ¬¶Áд¸ü¶àµÄÊý¾Ý¡£

Ϊ´Ë£¬³ýÁ˳ÌÐòºÍÁ÷½Úµã¼ä½»»»Êý¾Ý±ØÐèµÄ¶Áд»úÖÆÍ⣬»¹Ó¦¸ÃÔö¼Ó»º³å»úÖÆ¡£

»º³åÁ÷¾ÍÊÇÿһ¸öÊý¾ÝÁ÷·ÖÅäÒ»¸ö»º³åÇø£¬Ò»¸ö»º³åÇø¾ÍÊÇÒ»¸öÁÙʱ´æ´¢Êý¾ÝµÄÄÚ´æ¡£

ÕâÑù¿ÉÒÔ¼õÉÙ·ÃÎÊÓ²Å̵ĴÎÊý,Ìá¸ß´«ÊäЧÂÊ¡£

BufferedInputStream:µ±Ïò»º³åÁ÷дÈëÊý¾Ýʱºò£¬Êý¾ÝÏÈдµ½»º³åÇø£¬´ý»º³åÇøÐ´Âúºó£¬ÏµÍ³Ò»´ÎÐÔ½«Êý¾Ý·¢Ë͸øÊä³öÉ豸¡£

BufferedOutputStream :µ±´ÓÏò»º³åÁ÷¶ÁÈ¡Êý¾Ýʱºò£¬ÏµÍ³ÏÈ´Ó»º³åÇø¶Á³öÊý¾Ý£¬´ý»º³åÇøÎª¿Õʱ£¬ÏµÍ³ÔÙ´ÓÊäÈëÉ豸¶ÁÈ¡Êý¾Ýµ½»º³åÇø¡£

a¡¢½«Îļþ¶ÁÈëÄڴ棺

½«BufferedInputStreamÓëFileInputStreamÏà½Ó

FileInputStream in=new FileInputStream( ¡°file1.txt ¡°);

BufferedInputStream bin=new BufferedInputStream(in);

b¡¢½«ÄÚ´æÐ´ÈëÎļþ£º

½«BufferedOutputStreamÓë FileOutputStreamÏà½Ó

FileOutputStreamout=new FileOutputStream(¡°file2.txt¡±);

BufferedOutputStream bin=new BufferedInputStream(out);

c¡¢¼üÅÌÊäÈëÁ÷¶Áµ½ÄÚ´æ

½«BufferedReaderÓë±ê×¼µÄÊý¾ÝÁ÷Ïà½Ó

InputStreamReader sin=new InputStreamReader (System.in) £»

BufferedReader bin=new BufferedReader(sin);

Àý×Ó£º´Ó¼üÅÌÊäÈëÒ»´®ÄÚÈÝ´æµ½file1.txtÎļþÖÐ

public class FileInputStreamDemo {

public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new FileWriter(new File("file1.txt")));
String s;
while ((s = br.readLine()).length() > 0) {
bw.write(s, 0, s.length());
}
}
}

½á¹û£º

´ó¼Ò¿ÉÒÔ¿´µ½£¬ÎÒÃǸղÅÔÚ¼üÅÌÉÏÊäÈëµÄÄÚÈݲ¢Ã»ÓдæÈëµ½Õâ¸öÎļþÖУ¬Õâ²»ÊDzٵ°Âð£¿ÕâÑùÖ»ÊÇΪÁËÒý³ö°ü×°Á÷µÄÒ»¸öÌØÐÔ¼´ÒòΪËüÊǰü×°Á÷ÓµÓлº´æÇø£¬Ã¿´ÎµÄ¶ÁÈ¡µÄÊý¾Ý¶¼´æÔÚ»º´æÇøÖУ¬µ±»º´æÇøÂúÁ˵Äʱºò²Å»áдÈëµ½Ó²ÅÌÉÏ¡£µ«ÊÇĬÈϵĻº´æÇø´óСΪ8192¸ö×Ö½Ú£¬µ±È»ÄãÒ²¿ÉÒÔÖ¸¶¨»º´æÇøµÄ´óС¡£ÏÔÈ»¸Õ²ÅÊäÈëµÄ×Ö·û´®²¢Ã»ÓÐ×°Âú¡£

Ö¸¶¨»º´æÇøµÄ´óС£º°ü×°Á÷µÄ¹¹ÔìÆ÷

Èç BufferedWriter(Writer out, int size)

´´½¨Ò»¸öʹÓøø¶¨´óСÊä³ö»º³åÇøµÄлº³å×Ö·ûÊä³öÁ÷¡£sizeΪ»º´æÇøµÄ´óС

ËùÒÔ¾ÍÐèÒªÎÒÃÇÊÖ¶¯µÄȥˢлº³åÇø¡£µ÷Óðü×°Á÷µÄ flush() ·½·¨¡£Õâ¸ö·½·¨µÄ×÷ÓþÍÊǽ«»º´æÇøµÄÄÚÈÝдÈëµ½Ó²ÅÌÉϲ¢Çå¿Õ»º´æÇø¡£

µ±È»Äܲ»Äܲ»Ð´ flush£¨£©·½·¨Ò²ÈÃËüË¢ÐÂÄØ£¿

´ð£º¿ÉÒÔ£¬µ÷Óà close£¨) ·½·¨¹Ø±ÕÁ÷¼´¿É¡£µ±Äãµ÷Óà close£¨£©·½·¨Ê±Ëü»áÏÈˢлº´æÇø¡£Õâ¾ÍÊǸղÅÉÏÃæËù˵Ҫ¼ÇµÃÓÃÍêÖ®ºóÒª¹Ø±ÕÁ÷¡£²»¹ý×îºÃÓÐʹÓõ½°ü×°Á÷µÄʱºòÁ½¸ö·½·¨¶¼¼ÇµÃдÉÏ¡£

³ÌÐò˵Ã÷£º

´Ó¼üÅ̶ÁÈë×Ö·û£¬²¢Ð´Èëµ½ÎļþÖÐBufferedReaderÀàµÄ·½·¨£ºString readLine()

×÷Ó㺶ÁÒ»ÐÐ×Ö·û´®£¬ÒԻسµ·ûΪ½áÊø¡£

BufferedWriterÀàµÄ·½·¨£ºbout.write(String s,offset,len)

×÷Ó㺴ӻº³åÇø½«×Ö·û´®s´Óoffset¿ªÊ¼£¬len³¤¶ÈµÄ×Ö·û´®Ð´µ½Ä³´¦¡£

µ±È»°ü×°Á÷Öл¹ÓÐÐí¶à·½·¨£¨Ö÷Òª·½·¨£©£º

void write(char ch);//дÈëµ¥¸ö×Ö·û¡£

void write(char []cbuf,int off,int len)//дÈë×Ö·ûÊý¾ÝµÄijһ²¿·Ö¡£
void write(String s,int off,int len)//дÈë×Ö·û´®µÄijһ²¿·Ö¡£

void newLine()//дÈëÒ»¸öÐзָô·û¡£

void flush();//ˢиÃÁ÷ÖеĻº³å¡£½«»º³åÊý¾Ýдµ½Ä¿µÄÎļþÖÐÈ¥¡£

void close();//¹Ø±Õ´ËÁ÷£¬ÔٹرÕǰ»áÏÈË¢ÐÂËû¡£

a¡¢Reader³éÏóÀà

ÓÃÓÚ¶ÁÈ¡×Ö·ûÁ÷µÄ³éÏóÀà¡£×ÓÀà±ØÐëʵÏֵķ½·¨Ö»ÓÐ read(char[], int, int) ºÍ close()¡£µ«ÊÇ£¬¶àÊý×ÓÀà½«ÖØÐ´´Ë´¦¶¨ÒåµÄһЩ·½·¨£¬ÒÔÌṩ¸ü¸ßµÄЧÂʺÍ/»òÆäËû¹¦ÄÜ¡£

×ÓÀà¼òµ¥½éÉÜ£º

(1) ÓÃÖ¸¶¨×Ö·ûÊý×é×÷Ϊ²ÎÊý£ºCharArrayReader(char[]) 

½«×Ö·ûÊý×é×÷ΪÊäÈëÁ÷:CharArrayReader(char[], int, int)
¶ÁÈ¡×Ö·û´®£¬¹¹Ô캯ÊýÈçÏ£º public StringReader(String s);

2) CharArrayReader£ºÓëByteArrayInputStream¶ÔÓ¦

3) StringReader : ÓëStringBufferInputStream¶ÔÓ¦

4) InputStreamReader
´ÓÊäÈëÁ÷¶ÁÈ¡×Ö½Ú£¬ÔÚ½«ËüÃÇת»»³É×Ö·û:Public inputstreamReader(inputstream is);

5) FilterReader: ÔÊÐí¹ýÂË×Ö·ûÁ÷
protected filterReader(Reader r);

6) BufferReader :½ÓÊÜReader¶ÔÏó×÷Ϊ²ÎÊý£¬²¢¶ÔÆäÌí¼Ó×Ö·û»º³åÆ÷£¬Ê¹ÓÃreadline()·½·¨¿ÉÒÔ¶ÁȡһÐС£
Public BufferReader(Reader r);

Ö÷Òª·½·¨£º

(1) public int read() throws IOException; //¶Áȡһ¸ö×Ö·û£¬·µ»ØÖµÎª¶ÁÈ¡µÄ×Ö·û

¡¡(2) public int read(char cbuf[]) throws IOException; /*¶ÁȡһϵÁÐ×Ö·ûµ½Êý×écbuf[]ÖУ¬·µ»ØÖµÎªÊµ¼Ê¶ÁÈ¡µÄ×Ö·ûµÄÊýÁ¿*/

(3) public abstract int read(char cbuf[],int off,int len) throws IOException; /*¶ÁÈ¡len¸ö×Ö·û£¬´ÓÊý×écbuf[]µÄϱêoff´¦¿ªÊ¼´æ·Å£¬·µ»ØÖµÎªÊµ¼Ê¶ÁÈ¡µÄ×Ö·ûÊýÁ¿£¬¸Ã·½·¨±ØÐëÓÉ×ÓÀàʵÏÖ*/

 

b¡¢ Writer³éÏóÀà

дÈë×Ö·ûÁ÷µÄ³éÏóÀà¡£×ÓÀà±ØÐëʵÏֵķ½·¨½öÓÐ write(char[], int, int)¡¢flush() ºÍ close()¡£µ«ÊÇ£¬¶àÊý×ÓÀà½«ÖØÐ´´Ë´¦¶¨ÒåµÄһЩ·½·¨£¬ÒÔÌṩ¸ü¸ßµÄЧÂʺÍ/»òÆäËû¹¦ÄÜ¡£

×ÓÀà¼òµ¥½éÉÜ£º

1£© FileWrite: ÓëFileOutputStream¶ÔÓ¦

½«×Ö·ûÀàÐÍÊý¾ÝдÈëÎļþ£¬Ê¹ÓÃȱʡ×Ö·û±àÂëºÍ»º³åÆ÷´óС¡£ 
¡¡¡¡Public FileWrite(file f);

2) chararrayWrite:ÓëByteArrayOutputStream¶ÔÓ¦ ,½«×Ö·û»º³åÆ÷ÓÃ×÷Êä³ö¡£

Public CharArrayWrite();

¡¡¡¡

3) PrintWrite:Éú³É¸ñʽ»¯Êä³ö

public PrintWriter(outputstream os);

¡¡¡¡

4) filterWriter:ÓÃÓÚдÈë¹ýÂË×Ö·ûÁ÷

protected FilterWriter(Writer w); 

¡¡¡¡

5) PipedWriter£ºÓëPipedOutputStream¶ÔÓ¦

6) StringWriter£ºÎÞÓëÖ®¶ÔÓ¦µÄÒÔ×Ö½ÚΪµ¼ÏòµÄstream

Ö÷Òª·½·¨£º

(1)  public int read() throws IOException; //¶Áȡһ¸ö×Ö·û£¬·µ»ØÖµÎª¶ÁÈ¡µÄ×Ö·û 


¡¡(2) public int read(char cbuf[]) throws IOException; /*¶ÁȡһϵÁÐ×Ö·ûµ½Êý×écbuf[]ÖУ¬·µ»ØÖµÎªÊµ¼Ê¶ÁÈ¡µÄ×Ö·ûµÄÊýÁ¿*/

(3) public abstract int read(char cbuf[],int off,int len) throws IOException; /*¶ÁÈ¡len¸ö×Ö·û£¬´ÓÊý×écbuf[]µÄϱêoff´¦¿ªÊ¼´æ·Å£¬·µ»ØÖµÎªÊµ¼Ê¶ÁÈ¡µÄ×Ö·ûÊýÁ¿£¬¸Ã·½·¨±ØÐëÓÉ×ÓÀàʵÏÖ*/

¡¡¡¡

¡¡¡¡(4) public void write(String str) throws IOException£» //½«×Ö·û´®strÖеÄ×Ö·ûдÈëÊä³öÁ÷

¡¡¡¡

¡¡¡¡(5) public void write(String str,int off,int len) throws IOException£» //½«×Ö·û´®str ÖдÓË÷Òýoff¿ªÊ¼´¦µÄlen¸ö×Ö·ûдÈëÊä³öÁ÷

¡¡¡¡

¡¡¡¡(6) flush( ) //Ë¢¿ÕÊä³öÁ÷£¬²¢Êä³öËùÓб»»º´æµÄ×Ö½Ú¡£

¡¡¡¡

¡¡¡¡(7)close() ¹Ø±ÕÁ÷ public abstract void close() throws IOException

µ±È»ÕâЩ×ÓÀàÎÒÕâÀï¾Í²»Ò»Ò»È¥Ïêϸ½éÉÜÁË£¬ÎÒÏàÐÅ´ó¼Ò¿´¶®ÁË×Ö·ûÁ÷µÄÓ÷¨£¬ÔÙȥѧϰ×Ö·ûÁ÷µÄ»°Ó¦¸Ã²»ÔÚ»°Ïµġ£

7¡¢ÊäÈëÁ÷ºÍÊä³öÁ÷µÄÓ¦ÓÃ

ÕâÀï¾Í½éÉܵÄÎļþÊäÈëÁ÷ºÍÎļþÊä³öÁ÷Ò»ÆðʹÓõÄÇé¿ö¡£

Àý×Ó£ºÀûÓóÌÐò½«Îļþa.CHM ¿½±´µ½a.chmÖС£

ÕâÀï·Ö±ðÓÃÁËËÄÖÖ·½Ê½£¬Ò²Ëã¶ÔÕâЩµÄÁ÷µÄËÙÂʵÄÒ»¸ö¶Ô±È£¬ÕâËÄÖÖÇé¿ö·Ö±ðÊÇ£º

1£©»ù±¾×Ö½ÚÁ÷ÿ´Î¶ÁÒ»¸ö×Ö½Ú

2£©»ù±¾×Ö½ÚÁ÷ÿ´Î¶ÁÒ»×é×Ö½Ú

3£©¸ßЧ×Ö½ÚÁ÷ÿ´Î¶ÁÒ»¸ö×Ö½Ú£¨¼´°ü×°Á÷£©

4£©¸ßЧ×Ö½ÚÁ÷ÿ´Î¶ÁÒ»×é×Ö½Ú£¨¼´°ü×°Á÷£©

public class CopyDemo {

public static void main(String[] args) throws IOException {
String source = "a.CHM";
String dict = "copy.chm";
long startTime = System.currentTimeMillis();
method4(source, dict);
long endTime = System.currentTimeMillis();
System.out.println((endTime - startTime)+"ºÁÃë");
}

// »ù±¾×Ö½ÚÁ÷ÿ´Î¶ÁÒ»¸ö×Ö½Ú
public static void method1(String source, String dict) throws IOException {
FileInputStream fis = new FileInputStream(source);
FileOutputStream fos = new FileOutputStream(dict);
int a;
while ((a = fis.read()) != -1) {
fos.write(a);
}
fos.close();
fis.close();
}

// »ù±¾×Ö½ÚÁ÷ÿ´Î¶ÁÒ»×é×Ö½Ú
public static void method2(String source, String dict) throws IOException {
FileInputStream fis = new FileInputStream(source);
FileOutputStream fos = new FileOutputStream(dict);
byte[] b = new byte[1024];
int len;
while ((len = fis.read(b)) != -1) {
fos.write(b, 0, len);
}
fos.close();
fis.close();
}

// ¸ßЧ×Ö½ÚÁ÷ÿ´Î¶ÁÒ»¸ö×Ö½Ú
public static void method3(String source, String dict) throws IOException {
FileInputStream fis = new FileInputStream(source);
BufferedInputStream bis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream(dict);
BufferedOutputStream bos = new BufferedOutputStream(fos);
int a;
while ((a = fis.read()) != -1) {
fos.write(a);
}
bos.close();
bis.close();
}

// »ù±¾×Ö½ÚÁ÷ÿ´Î¶ÁÒ»×é×Ö½Ú
public static void method4(String source, String dict) throws IOException {
FileInputStream fis = new FileInputStream(source);
BufferedInputStream bis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream(dict);
BufferedOutputStream bos = new BufferedOutputStream(fos);
byte[] b = new byte[1024];
int len;
while ((len = fis.read(b)) != -1) {
fos.write(b, 0, len);
}
bos.close();
bis.close();
}
}

µ±È»²âÊÔµÄÎļþ¾¡Á¿´óµã£¬²»È»²î±ð²»ÊǺÜÃ÷ÏÔ£¬ÎÒÕâÀïµÄa.CHMÎļþµÄ´óСΪ35.2 MB¡£µ±È»ÓÃʱҲ¸ú¼ÆËã»úÐÔÄÜÓÐµã¹ØÏµ¡£µ±È»Îļþ´óµã²î±ð¾Í¸ü¼ÓÃ÷ÏԵ㡣

ÔÚÎÒµçÄÔÉϵÄËÄÖÖÇé¿öµÄÓÃʱΪ£º

1.221196ºÁÃë

2.346ºÁÃë

3.220454ºÁÃë

4.335ºÁÃë

ÕâÀï1ºÍ3£¬2ºÍ4±È½Ï£¬¿ÉÒÔ·¢ÏÖ°ü×°Á÷¸ü¼Ó¸ßЧ£¬ÎªÊ²Ã´ÄØ£¿

±È½ÏÏÂ2ºÍ4£¬°ÑÕâ¸ö¸ã¶®£¬ÆäËûµÄÒ²¾Í¶®ÁË¡£

ÕâÁ½¸ö´ÓÓ²ÅÌÉ϶ÁÈ¡ÄÚÈݵÄʱ¼äÓ¦¸Ã²î²»¶à£¬µ«Ê±¼ä¾Í²îÔÚдµÄʱ¼äÉÏÁË£¬»º´æÇøÒ»°ãÔÚÄڴ棬ÄÚ´æµÄËÙ¶ÈÊǺܿìµÄ£¬½«Êý¾ÝдÈëµ½Ó²Å̵ÄËÙ¶ÈÊǺÜÂýµÄ£¬ËùÒÔÎÒÃÇÖ»ÐèÒª¼õÉÙдÈëÓ²Å̵ĴÎÊý¼´¿É¡£°ü×°Á÷µÄĬÈÏ»º´æÇø´óСΪ8192×Ö½Ú£¬°ü×°Á÷¶ÁÈ¡8´Î²Åдһ´Î£¬ËùÒÔ°ü×°Á÷µÄЧÂÊÊÇ´ó´óÔö¼ÓÁË¡£

Áù¡¢Java IO µÄÒ»°ãʹÓÃÔ­Ôò

Ò»£©°´Êý¾ÝÀ´Ô´£¨È¥Ïò£©·ÖÀࣺ

1 ¡¢ÊÇÎļþ£º FileInputStream, FileOutputStream, ( ×Ö½ÚÁ÷ )FileReader, FileWriter( ×Ö·û )

2 ¡¢ÊÇ byte[] £º ByteArrayInputStream, ByteArrayOutputStream( ×Ö½ÚÁ÷ )

3 ¡¢ÊÇ Char[]: CharArrayReader, CharArrayWriter( ×Ö·ûÁ÷ )

4 ¡¢ÊÇ String: StringBufferInputStream, StringBufferOuputStream ( ×Ö½ÚÁ÷ )StringReader, StringWriter( ×Ö·ûÁ÷ )

5 ¡¢ÍøÂçÊý¾ÝÁ÷£º InputStream, OutputStream,( ×Ö½ÚÁ÷ ) Reader, Writer( ×Ö·ûÁ÷ )

¶þ£©°´ÊÇ·ñ¸ñʽ»¯Êä³ö·Ö£º

1 ¡¢Òª¸ñʽ»¯Êä³ö£º PrintStream, PrintWriter

Èý£©°´ÊÇ·ñÒª»º³å·Ö£º

1 ¡¢Òª»º³å£º BufferedInputStream, BufferedOutputStream,
( ×Ö½ÚÁ÷ ) BufferedReader, BufferedWriter( ×Ö·ûÁ÷ )

ËÄ£©°´Êý¾Ý¸ñʽ·Ö£º

1 ¡¢¶þ½øÖƸñʽ£¨Ö»Òª²»ÄÜÈ·¶¨ÊÇ´¿Îı¾µÄ£¬
±ÈÈçͼƬ¡¢ÒôƵ¡¢ÊÓÆµ£© :
InputStream, OutputStream ¼°ÆäËùÓдø Stream ½áβµÄ×ÓÀà

2 ¡¢´¿Îı¾¸ñʽ£¨º¬´¿Ó¢ÎÄÓ뺺×Ö»òÆäËû±àÂ뷽ʽ£©£» Reader, Writer ¼°ÆäËùÓдø Reader, Writer µÄ×ÓÀà

Î壩°´ÊäÈëÊä³ö·Ö£º

1 ¡¢ÊäÈ룺 Reader, InputStream ÀàÐ͵Ä×ÓÀà

2 ¡¢Êä³ö£º Writer, OutputStream ÀàÐ͵Ä×ÓÀà

Áù£©ÌØÊâÐèÒª£º

1 ¡¢´Ó Stream µ½ Reader,Writer µÄת»»Àࣺ InputStreamReader, OutputStreamWriter

2 ¡¢¶ÔÏóÊäÈëÊä³ö£º ObjectInputStream, ObjectOutputStream

3 ¡¢½ø³Ì¼äͨÐÅ£º PipeInputStream, PipeOutputStream, PipeReader, PipeWriter

4 ¡¢ºÏ²¢ÊäÈ룺 SequenceInputStream

5 ¡¢¸üÌØÊâµÄÐèÒª£º PushbackInputStream, PushbackReader, LineNumberInputStream, LineNumberReader

ÓÉÓÚÆª·ùÓÐÏÞ£¬»¹ÓÐһЩϸ½ÚµÄÕâÀï¾Í²»¶à˵ÁË£¬ÏëÒªÁ˽âµÄ»°¿ÉÒÔ¼ÓÎÒQQ460821714Ò»ÆðÌÖÂÛ¡£

ASCII Âë¶ÔÕÕ±í

ϱíÁгöÁË×Ö·û¼¯ÖÐµÄ 0 - 127 (0x00 - 0x7F)¡£

ϱíÁгöÁË×Ö·û¼¯ÖÐµÄ 128 - 255 (0x80 - 0xFF)¡£

 

   
2861 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Java΢·þÎñÐÂÉú´úÖ®Nacos
ÉîÈëÀí½âJavaÖеÄÈÝÆ÷
JavaÈÝÆ÷Ïê½â
Java´úÂëÖÊÁ¿¼ì²é¹¤¾ß¼°Ê¹Óð¸Àý
Ïà¹ØÎĵµ

JavaÐÔÄÜÓÅ»¯
Spring¿ò¼Ü
SSM¿ò¼Ü¼òµ¥¼òÉÜ
´ÓÁ㿪ʼѧjava±à³Ì¾­µä
Ïà¹Ø¿Î³Ì

¸ßÐÔÄÜJava±à³ÌÓëϵͳÐÔÄÜÓÅ»¯
JavaEE¼Ü¹¹¡¢ Éè¼ÆÄ£Ê½¼°ÐÔÄܵ÷ÓÅ
Java±à³Ì»ù´¡µ½Ó¦Óÿª·¢
JAVAÐéÄâ»úÔ­ÀíÆÊÎö
×îл¼Æ»®
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢ 6-12[ÏÃÃÅ]
È˹¤ÖÇÄÜ.»úÆ÷ѧϰTensorFlow 6-22[Ö±²¥]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 6-30[±±¾©]
ǶÈëʽÈí¼þ¼Ü¹¹-¸ß¼¶Êµ¼ù 7-9[±±¾©]
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À 7-25[Î÷°²]
ͼÊý¾Ý¿âÓë֪ʶͼÆ× 8-23[±±¾©]

Java ÖеÄÖÐÎıàÂëÎÊÌâ
Java»ù´¡ÖªÊ¶µÄÈýÊ®¸ö¾­µäÎÊ´ð
Íæ×ª Java Web Ó¦Óÿª·¢
ʹÓÃSpring¸üºÃµØ´¦ÀíStruts
ÓÃEclipse¿ª·¢iPhone WebÓ¦ÓÃ
²å¼þϵͳ¿ò¼Ü·ÖÎö

Struts+Spring+Hibernate
»ùÓÚJ2EEµÄWeb 2.0Ó¦Óÿª·¢
J2EEÉè¼ÆÄ£Ê½ºÍÐÔÄܵ÷ÓÅ
Java EE 5ÆóÒµ¼¶¼Ü¹¹Éè¼Æ
Javaµ¥Ôª²âÊÔ·½·¨Óë¼¼Êõ
Java±à³Ì·½·¨Óë¼¼Êõ

Struts+Spring+Hibernate/EJB+ÐÔÄÜÓÅ»¯
»ªÏÄ»ù½ð ActiveMQ Ô­ÀíÓë¹ÜÀí
ijÃñº½¹«Ë¾ Java»ù´¡±à³Ìµ½Ó¦Óÿª·¢
ij·çµç¹«Ë¾ Java Ó¦Óÿª·¢Æ½Ì¨ÓëÇ¨ÒÆ
ÈÕÕÕ¸Û J2EEÓ¦Óÿª·¢¼¼Êõ¿ò¼ÜÓëʵ¼ù
ij¿ç¹ú¹«Ë¾ ¹¤×÷Á÷¹ÜÀíJBPM
¶«·½º½¿Õ¹«Ë¾ ¸ß¼¶J2EE¼°ÆäÇ°ÑØ¼¼Êõ