55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a

Similar documents
II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K

I HTML HashMap (i) (ii) :.java import java.net.*; import java.io.*; import java.util.hashmap; public class SimpleStopWatch { public static voi

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C

(Microsoft PowerPoint - \223\306\217KJava\221\346\202R\224\305.ppt)

Thread

Java (9) 1 Lesson Java System.out.println() 1 Java API 1 Java Java 1

r1.dvi

vol.30.}...`.X...b.h

I. (i) Java? (A). 2Apples (B). Vitamin-C (C). Peach21 (D). Pine_Apple (ii) Java? (A). Java (B). Java (C). Java (D). JavaScript Java JavaScript Java (i

12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある インターネットアドレス

PowerPoint Presentation

I java A

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

4章 システム評価

Network Programming

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

K227 Java 2

Microsoft PowerPoint - netprog_2015_07.ppt [互換モード]

新・明解Java入門

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

r14.dvi

r8.dvi

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

データ構造とアルゴリズム論

アルゴリズムとデータ構造1

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme

Programming-C-9.key

226

< F2D834F838C A815B A CC>

< F2D B838A835882CC8CF68EAE2E6A7464>

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperformed

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme

オブジェクト指向プログラミング・同演習 5月21日演習課題

untitled

Java言語 第1回

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys

Java演習(4) -- 変数と型 --

:30 12:00 I. I V II. III. IV. ( a d) V. VI : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeyliste

r2.dvi

問題1 以下に示すプログラムは、次の処理をするプログラムである

1 Java Java GUI , 2 2 jlabel1 jlabel2 jlabel3 jtextfield1 jtextfield2 jtextfield3 jbutton1 jtextfield1 jtextfield2 jtextfield3

ALG ppt

GUIプログラムⅤ

ガイダンス

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public

LogisticaTRUCKServer-Ⅱ距離計算サーバ/Active-Xコントロール/クライアント 概略   

通信ネットワーク補足 TCP サーバプログラムその 14 フロー制御基本は確実に伝達することでした 次に受け取るべき情報の確認応答 (ACK 番号 = 受け取った シーケンス番号 + 受信データ量 ) のメッセージ受信で相手が受け取ったと判断する訳ですがその応答セグメントを待っていると遅くなります

エラー処理・分割コンパイル・コマンドライン引数

r3.dvi

JAVA 11.4 PrintWriter 11.5

ALG ppt

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value =

untitled

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;


Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperformed

PowerPoint Presentation

text_13.dvi

問題1 以下に示すプログラムは、次の処理をするプログラムである

ガイダンス

データ構造とアルゴリズム論

r4.dvi

: : : TSTank 2

JavaプログラミングⅠ

untitled

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

アプレットの作成

明解Javaによるアルゴリズムとデータ構造

< F2D F B834E2E6A7464>

< F2D82B682E182F182AF82F12E6A7464>

解きながら学ぶJava入門編

< F2D92DE82E8914B82CC977088D32E6A7464>

JavaプログラミングⅠ

r02.dvi

JAVA H13 OISA JAVA 1

GUIプログラムⅣ

ohp02.dvi

2

** 平成 16 年度 FE 午後問題 Java** 示現塾プロジェクトマネージャ テクニカルエンジニア ( ネットワーク ) など各種セミナーを開催中!! 開催日 受講料 カリキュラム等 詳しくは 今すぐアクセス!! 平成 16

2

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=


ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

Java updated

text_10.dvi

2

IIJ Technical WEEK REST API型クラウドストレージサービス「FV/S」の自社への実装

IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( ) L09 IP (2017) 1 / 28

1.ppt

Microsoft PowerPoint - prog13.ppt

データ構造とアルゴリズム論

Java演習(2) -- 簡単なプログラム --

< F2D8EA CE909482CC92EA82852E6A7464>

< F2D82518CC282CC D2E6A7464>

Transcription:

55 7 Java C Java TCP/IP TCP/IP 7.1 7.1.1 TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] argv) { Socket readsocket = new Socket(argv[0], Integer.parseInt(argv[1])); InputStream instrm = readsocket.getinputstream(); while(true) { int c = instrm.read(); if (c==-1) break; System.out.write(c); catch (Exception e) { e.printstacktrace(); System.exit(1); TCP java TCP_RO Socket IP Socket InputStream InputStream System.in

56 7 Java while(true) { int c = instrm.read(); if (c==-1) break; System.out.write(c); byte[] buff = new byte[1024]; while(true) { int n = instrm.read(buff); if (n==-1) break; System.out.write(buff, 0, n); 1024 InputStream read() read(byte[]) main try catch Exception 7.1.2 TCP TCP_RW.java import java.net.*; import java.io.*; public class TCP_RW { public static void main(string[] argv) { byte[] buff = new byte[1024]; Socket rwsocket = new Socket(argv[0], Integer.parseInt(argv[1])); InputStream instrm = rwsocket.getinputstream(); OutputStream outstr = rwsocket.getoutputstream(); while(true) { // int n = System.in.read(buff); if (n==-1) break; outstr.write(buff, 0, n); while(true) { int n = instrm.read(buff); if (n==-1) break; System.out.write(buff, 0, n); catch (Exception e) { e.printstacktrace(); System.exit(1); //

7.1. 57 Socket OutputStream outstr outstr write(byte[], int, int) write(buff, i, n) buff i n java TCP_RW 80 HTTP Web > java TCP_RW 133.92.XXX.XXX 80 GET /index.html HTTP/1.0 Ctrl-Z Ctrl-D HTTP1.1 200 OK Date: Mon, XX Xxx 2XXX XX:XX:XX GMT Server: Apache/X.X... Ctrl-Z Windows, Ctrl-D Unix 7.1.3 URL HTTP simpleget simpleget http://133.92.xxx.xxx/index.html index.html 7.1.4 URL HTTP <a href="... "> : Java.lang.String 1 2 100% telnet ftp telnet ftp Java C stty ioctl ftp telnet 1 (JDKDIR)/docs/api/java/lang/String.html

58 7 Java 7.1.5 import javax.swing.*; import java.awt.*; import java.awt.event.*; class MyDialog extends JFrame implements ActionListener { JPasswordField t; String ret; boolean suspended; private String ShowDialogAux(String message, int len, boolean echo) { getcontentpane().setlayout(new FlowLayout()); getcontentpane().add(new Label(message)); t = new JPasswordField("", len); t.addactionlistener(this); if (!echo) {/* echo false */ t.setechochar( * ); getcontentpane().add(t); JButton b = new JButton("OK"); b.addactionlistener(this); getcontentpane().add(b); pack(); // suspended = true; show(); synchronized(this) { while(suspended) { // OK wait(); catch (InterruptedException e) { dispose(); // return ret; public void actionperformed(actionevent ae) { ret = t.gettext(); // getpassword() suspended = false; synchronized(this) { notify(); // ShowDialogAux public static String ShowDialog(String message, int len, boolean echo) { MyDialog my = new MyDialog(); return my.showdialogaux(message, len, echo);

7.2. 59 MyDialog MyDialogTest.java... public class MyDialogTest { // MyDialog public static void main(string[] argv) { String result1 = MyDialog.ShowDialog("login:", 8, true); String result2 = MyDialog.ShowDialog("password:", 8, false); System.out.println(result1); if (result1.equals(result2)) { System.out.println("OK!"); System.exit(0); MyDialog.ShowDialog(String, int, boolean) 1 2 TextField 3 true false 2 password: * 7.1.6 simplechmod FTP chmod simplechmod java simplechmod 660 ftp://stfile/home/report/... 7.1.7 Tenso FTP Tenso : Java.io.File 2 7.1.8 Tenso 7.2 Java InputStream while (true) { if (input1.available() > 0) {... // input1 else if (input2.available() > 0) {... // input2... 2 (JDKDIR)/docs/api/java/io/File.html

60 7 Java Java 7.2.1 TCPThread.java import java.net.*; import java.io.*; public class TCPThread { public static void main(string[] argv) { Socket rwsocket = new Socket(argv[0], Integer.parseInt(argv[1])); InputStream instrm = rwsocket.getinputstream(); OutputStream outstr = rwsocket.getoutputstream(); Thread input_thread = new Thread(new StreamConnector(System.in, outstr)); Thread output_thread = new Thread(new StreamConnector(instrm, System.out)); input_thread.start(); output_thread.start(); catch (Exception e) { e.printstacktrace(); System.exit(1); StreamConnector StreamConnector TCPThread.java class StreamConnector implements Runnable { InputStream src = null; OutputStream dist = null; // public StreamConnector(InputStream in, OutputStream out){ src = in; dist = out; // // public void run(){ byte[] buff = new byte[1024]; while (true) { int n = src.read(buff); if (n > 0) dist.write(buff, 0, n); catch(exception e){ e.printstacktrace(system.err); System.exit(1);

7.3. 61 java TCPThread 7.2.2 HTTP 7.3 HTTP Telenet Java

62 7 Java 7.3.1 TCP Pphttpd.java import java.io.*; import java.net.*; public class Pphttpd{ public static void main(string args[]){ // ServerSocket servsock = null ; Socket sock ; BufferedReader in; // println PrintStream PrintStream out; // servsock = new ServerSocket(Integer.parseInt(args[0])); while(true){ sock = servsock.accept(); // // // // System.out.println("Request from " + (sock.getinetaddress()).gethostname()); // // 1 in = new BufferedReader( new InputStreamReader(sock.getInputStream())); out = new PrintStream(sock.getOutputStream()); // int i ; for(i=0; i<2; ) { in.readline(); out.println("<html>"); out.println("<head><title>test</title></head>"); out.println("<body>hello!</body>"); out.println("</html>") ; // sock.close() ; catch (Exception e){ e.printstacktrace(); System.exit(1) ; ServerSocket sock = servsock.accept();

7.4. 63 Socket Socket ServerSocket java Pphttpd 8080 8080 Netscape URL http://xxx.xxx.xxx.xxx:8080/ XXX.XXX.XXX.XXX Pphttpd IP Hello! Web WindowsXP IP ipconfig IP 127.0.0.1 Pphttpd 127.0.0.1 7.3.2 Web proxy 7.3.3 Web HTTP 7.3.4 Web HTTP 7.3.5 7.4

64 7 Java 7.4.1 UDP UdpClient.java import java.net.*; import java.io.*; public class UdpClient { public static void main(string[] argv) { // IP InetAddress addr = InetAddress.getByName(argv[0]); int port = Integer.parseInt(argv[1]); // DatagramSocket dgsock = new DatagramSocket(); while (true) { byte buff1[]= new byte[512]; int n = System.in.read(buff1); // DatagramPacket pa1 = new DatagramPacket(buff1, n, addr, port); dgsock.send(pa1); // System.out.println("Sent!"); // byte buff2[] = new byte[512]; DatagramPacket pa2 = new DatagramPacket(buff2, buff2.length); dgsock.receive(pa2); // System.out.print("received: "); System.out.print(new String(pa2.getData())); catch (Exception e) { e.printstacktrace(); System.exit(1); java UdpClient DatagramSocket UDP DatagramPacket DatagramPacket(byte[] data, int len, InetAddress addr, int port) len IP addr port DatagramSocket send(datagrampacket)

7.4. 65 DatagramPacket(byte[] data, int len) 2 DatagramSocket receive receive DatagramPacket receive 7.4.2 UDP UdpServer.java import java.net.*; import java.io.*; public class UdpServer { public static void main(string[] argv) { // int port = Integer.parseInt(argv[0]); // DatagramSocket dgsock = new DatagramSocket(port); while (true) { // byte buff1[]= new byte[512]; DatagramPacket pa1 = new DatagramPacket(buff1, buff1.length); dgsock.receive(pa1); // System.out.println("Received!"); System.out.print(new String(pa1.getData())); System.out.println("addr: "+pa1.getaddress()); System.out.println("port: "+pa1.getport()); // DatagramPacket pa2 = new DatagramPacket(pa1.getData(), pa1.getlength(), pa1.getaddress(), pa1.getport()); dgsock.send(pa2); System.out.println("Sent!"); catch (Exception e) { e.printstacktrace(); System.exit(1); int DatagramSocket DatagramPacket getdata getaddress, getport IP

66 7 Java 7.4.3 100 FORWARD 100 RIGHT 120 FORWARD 100 RIGHT 120 FORWARD 100 RIGHT 120 FORWARD RIGHT Socket getinputstream getoutputstream ServerSocket accept PrintStream DatagramSocket DatagramPacket send receive getdata getaddress getport