Scala:輸入和輸出


1.從控制台輸入:

 

 另外還有很多中方法供選擇

 

 

2.從文件中輸入

  2.1絕對路徑

 

   2.2相對路徑:一定要注意i相對路徑是相對於整個項目project的路徑而不是module

 

 

  注意最后一定要把Source關閉

 

 2.文件的輸出

 

 

 

 3.網絡的交互

  

 1 package com.me.scala
 2 
 3 import java.io.OutputStream
 4 import java.net.Socket
 5 
 6 /**
 7  * @author sbr    
 8  * @create 2020-11-17 14:56
 9  */
10 object NetIOClient {
11 
12   def main(args: Array[String]): Unit = {
13 
14     //連接服務器
15     val client=new Socket("localhost",9999)
16     //向服務器發送數據
17     println("連接服務器成功,等待發送數據.....")
18     val stream: OutputStream = client.getOutputStream
19 
20     stream.write(1)
21     stream.flush()
22     println("發送數據成功!")
23     //發送完畢后關閉客戶端
24     client.close()
25   }
26 }
NetIOClient.scala
 1 package com.me.scala
 2 
 3 import java.io.InputStream
 4 import java.net.{ServerSocket, Socket}
 5 
 6 /**
 7  * @author sbr    
 8  * @create 2020-11-17 14:55
 9  */
10 object NetIOServer {
11   def main(args: Array[String]): Unit = {
12 
13     val server =new ServerSocket(9999)
14     println("服務已經啟動......等待客戶端的鏈接")
15     //accept方法如果沒有客戶端的鏈接,就一直處於阻塞狀態,直到連接為止
16     var client:Socket=server.accept()
17     val stream: InputStream = client.getInputStream
18     val i: Int = stream.read()
19     println(i)
20   }
21 }
NetIOServer.scala

分別運行server和client結果如圖

 

如果想要發送的是對象,那么需要使用對象輸入輸出流,並將對象序列化

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM