自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java Socket傳輸數(shù)據(jù)的文件系統(tǒng)介紹

開發(fā) 后端
Java Socket傳輸數(shù)據(jù)一直在不斷的使用中有不少的問題存在,下面我們就看看如何才能更好的學(xué)習(xí)有關(guān)的代碼,希望大家有所收獲。

Java Socket傳輸數(shù)據(jù)在進行的時候有很多的事情需要我們不斷的進行有關(guān)代碼的學(xué)習(xí)。只有不斷的學(xué)習(xí)才能掌握相關(guān)的問題。下面我們就詳細的看看如何才能更好的使用這些技術(shù)。

我們將這個對象串行化至文件系統(tǒng),然后將之還原,Java Socket傳輸數(shù)據(jù)在這個過程其實類似于一個“壓扁”和“充氣”的過程,請注意,我們的Person類中包含一個嵌入對象,并且birthday變化,將之設(shè)置為transient限定符,這表示我們放棄了birthday的串行化;

Java代碼

  1. package stream.demo;  
  2. import java.io.ByteArrayInputStream;  
  3. import java.io.ByteArrayOutputStream;   
  4. import java.io.File;  
  5. import java.io.FileInputStream;  
  6. import java.io.FileOutputStream;  
  7. import java.io.IOException;  
  8. import java.io.InputStream;  
  9. import java.io.ObjectInputStream;  
  10. import java.io.ObjectOutputStream;  
  11. import java.io.OutputStream;  
  12. import java.util.Date;  
  13. public class Persistence {  
  14. public static void main(String[] args) {  
  15. Persistence.savePerson();  
  16. Persistence.getPerson();  
  17. }  
  18. public static void getPerson() {  
  19. try {  
  20. InputStream in = new FileInputStream("c:\\person.dat");  
  21. ObjectInputStream dataInput = new ObjectInputStream(in);  
  22. Person p = (Person) dataInput.readObject();  
  23. System.out.println(p.getName());  
  24. System.out.println(p.getTall());  
  25. System.out.println(p.getBirthday());  
  26. System.out.println(p.getAddress().getCity());  
  27. System.out.println(p.getAddress().getStreet());  
  28. } catch (Exception e) {  
  29. // TODO Auto-generated catch block  
  30. e.printStackTrace();  
  31. }  
  32. }  
  33. public static void savePerson() {  
  34. Person p = new Person();  
  35. p.setName("corey");  
  36. p.setTall(171);  
  37. p.setBirthday(new Date());  
  38. p.setAddress(new Address("yiyang", "ziyang"));  
  39. OutputStream out = new ByteArrayOutputStream();  
  40. try {  
  41. OutputStream fileOut = new FileOutputStream(new File(  
  42. "c:\\person.dat"));  
  43. ObjectOutputStream dataOut = new ObjectOutputStream(fileOut);  
  44. dataOut.writeObject(p);  
  45. dataOut.close();  
  46. fileOut.close();  
  47. } catch (IOException e) {  
  48. // TODO Auto-generated catch block  
  49. e.printStackTrace();  
  50. }  
  51. }  
  52. }  
  53. package stream.demo;  
  54. import java.io.ByteArrayInputStream;  
  55. import java.io.ByteArrayOutputStream;  
  56. import java.io.File;  
  57. import java.io.FileInputStream;  
  58. import java.io.FileOutputStream;  
  59. import java.io.IOException;  
  60. import java.io.InputStream;  
  61. import java.io.ObjectInputStream;  
  62. import java.io.ObjectOutputStream;  
  63. import java.io.OutputStream;  
  64. import java.util.Date;  
  65. public class Persistence {  
  66. public static void main(String[] args) {  
  67. Persistence.savePerson();  
  68. Persistence.getPerson();  
  69. }  
  70. public static void getPerson() {  
  71. try {  
  72. InputStream in = new FileInputStream("c:\\person.dat");  
  73. ObjectInputStream dataInput = new ObjectInputStream(in);  
  74. Person p = (Person) dataInput.readObject();  
  75. System.out.println(p.getName());  
  76. System.out.println(p.getTall());  
  77. System.out.println(p.getBirthday());  
  78. System.out.println(p.getAddress().getCity());  
  79. System.out.println(p.getAddress().getStreet());  
  80. } catch (Exception e) {  
  81. // TODO Auto-generated catch block  
  82. e.printStackTrace();  
  83. }  
  84. }  
  85. public static void savePerson() {  
  86. Person p = new Person();  
  87. p.setName("corey");  
  88. p.setTall(171);  
  89. p.setBirthday(new Date());  
  90. p.setAddress(new Address("yiyang", "ziyang"));  
  91. OutputStream out = new ByteArrayOutputStream();  
  92. try {  
  93. OutputStream fileOut = new FileOutputStream(new File(  
  94. "c:\\person.dat"));  
  95. ObjectOutputStream dataOut = new ObjectOutputStream(fileOut);  
  96. dataOut.writeObject(p);  
  97. dataOut.close();  
  98. fileOut.close();  
  99. } catch (IOException e) {  
  100. // TODO Auto-generated catch block  
  101. e.printStackTrace();  
  102. }  
  103. }  

以上就是對Java Socket傳輸數(shù)據(jù)的詳細介紹,希望大家有所收獲。

【編輯推薦】

  1. java Socket多線程服務(wù)器源代碼介紹
  2. java Socket多線程客戶端配置方案
  3. Java Socket通訊客戶端代碼詳解
  4. Java Socket通訊實際操作手冊
  5. Java Socket通訊客戶端代碼編寫教程
責(zé)任編輯:張浩 來源: 博客園
相關(guān)推薦

2009-12-18 17:08:10

Linux常見文件系統(tǒng)

2017-04-25 15:50:02

sparse傳輸處理

2011-03-07 09:11:23

2012-09-19 15:05:24

MogileFS分布式文件系統(tǒng)

2009-12-18 15:54:44

Fedora proc

2010-01-26 15:08:11

Android根文件系

2012-10-09 16:43:47

FastDFS分布式文件系統(tǒng)

2020-07-22 14:53:06

Linux系統(tǒng)虛擬文件

2012-01-18 10:07:21

WindowsReFS文件系統(tǒng)

2013-01-07 10:42:43

HDFS

2009-12-22 09:43:13

Linux文件系統(tǒng)組織

2016-12-27 10:48:59

Linux命令磁盤與文件系統(tǒng)

2021-01-22 10:40:08

Linux文件內(nèi)存

2012-03-19 10:35:51

ibmdw

2013-05-27 14:46:06

文件系統(tǒng)分布式文件系統(tǒng)

2010-04-30 15:51:48

Unix系統(tǒng)

2011-01-13 14:10:30

Linux文件系統(tǒng)

2012-09-19 13:48:33

pNFS文件系統(tǒng)

2009-06-30 10:40:28

Linux

2009-07-02 19:07:25

Linux
點贊
收藏

51CTO技術(shù)棧公眾號