私はJavaでクライアントサーバーアプリケーションを作成しています。ある時点で、私は自分のPCクライアントがソケット経由で自分のPCサーバーにディレクトリを作成する必要があります。誰か助けてくれますか?クライアントマシンのJavaソケットを使用してサーバーマシンにディレクトリを作成する方法は?
答えて
あなたは通信プロトコルを設計する必要があり、これは中方言の一種でありますあなたのサーバーとクライアントが話すものです。
私はという最も簡単な通信プロトコルをの2つのコマンドしか持っていません。
2つの単純なコマンドとその意味で構成されています
ます。mkdir - リモートサーバに
終了をディレクトリを作成する - これはあなたが書かなければならないことを意味
セッションを閉じますあなたの素晴らしい通信プロトコルを実装する2つのプログラム(サーバーとクライアント)。
このコードから実際に2つのコマンドを送受信し、コマンドの実行をふりかえりセッションを終了することができます。
サーバー側:
import java.net.*;
import java.io.*;
public class Server
{
static ServerSocket serverSocket;
static Socket socket;
static BufferedWriter writer;
static BufferedReader reader;
public static void main(String args[])
{
try
{
System.out.println("Hola mundo");
serverSocket = new ServerSocket(12345);
socket = serverSocket.accept();
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
while(true)
{
String command = reader.readLine();
if(command.contains("mkdir"))
{
System.out.println("Creating a new directory " + command);
// put yoour code to create a directory with the params
}
else if(command.equals("exit"))
{
System.out.println("Exiting the program");
break;
}
}
}
catch(Exception err)
{
}
}
}
クライアント側:
import java.net.*;
import java.io.*;
public class Client
{
static Socket socket;
static BufferedWriter writer;
static BufferedReader reader;
public static void main(String args[])
{
try
{
System.out.println("Connecting to the server");
InetSocketAddress address = new InetSocketAddress("127.0.0.1", 12345);
socket = new Socket();
socket.connect(address);
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
// creating folder
System.out.println("Creating remote folder");
writer.write("mkdir newFolder\r\n");
writer.flush();
// closing server
System.out.println("Sending exit command");
writer.write("exit\r\n");
writer.flush();
socket.close();
}
catch(IOException err)
{
System.out.println(err.getMessage());
}
}
}
今、あなたの挑戦は、mkdirコマンドがサーバに到達したとき、本当にフォルダが作成されるようにすることです。
編集:
javac Client.java
javac Server.java
こんにちは、助けてくれてありがとう。 –
Files#createDirectory()
を使用すると、ファイルシステムにディレクトリを作成できます。クライアントから渡されたデータを使用して、ディレクトリの名前を判別することができます。ここで
は、Javadocのへのリンクです:https://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html#createDirectory-java.nio.file.Path-java.nio.file.attribute.FileAttribute...-
は、ここでの例が含まれてOracleのJavaチュートリアル内のリンクです:https://docs.oracle.com/javase/tutorial/essential/io/dirs.html#create
- 1. Java - 相対パスを使用してディレクトリにファイルを作成する方法
- 2. シェルスクリプトを使用してディレクトリを作成する方法は?
- 3. JavaScriptを使用してソケットを作成する方法
- 4. Javaを使用してクライアントマシンでOS名とバージョンを識別する方法は?
- 5. クライアントマシンのコアサービスを使用してTridionに接続する方法
- 6. javaを使用して.docファイルを作成する方法は?
- 7. Javaを使用してJSONドキュメントを作成する方法は?
- 8. Java EEを使用してユーザーログを作成する方法は?
- 9. Javaを使用してXMLファイルを作成する方法は?
- 10. jaxbを使用してJavaオブジェクトを作成する方法
- 11. Javaを使用してデータフロー図を作成する方法
- 12. ofstreamを使用してディレクトリを自動的に作成する方法
- 13. phonegapファイルapiを使用して、そのディレクトリにディレクトリとファイルを作成する方法は?
- 14. Delphi:メインスレッドの外側にソケットを作成して使用する
- 15. Java:ディレクトリ作成の適切な方法
- 16. 必要に応じてディレクトリを作成し、ある場所にファイルを作成するJavaの方法?
- 17. Javaソケットを使用してサーバーからファイルをダウンロードする方法は?
- 18. ソケットを使用してNAOロボットに接続する方法は?
- 19. コピー中にIFileOperationを使用してディレクトリを作成する
- 20. linuxでソケットを使用してhttpsリクエストを作成する
- 21. ソケットを使用して簡単なプロキシを作成する
- 22. webservicesとMySQLを使用してJavaバックエンドを作成する方法は?
- 23. Javaでwindows shell32.dllを使用してディレクトリショートカットを作成する方法は?
- 24. perlスクリプトを作成してスクリプト内にディレクトリとメイクファイルを作成する方法
- 25. JAVAのクライアントマシンからMACアドレスを取得する方法は?
- 26. Webサーバー用の仮想ディレクトリを作成する方法は? (ASP.NET)
- 27. ASP.NET用のIIS7で仮想ディレクトリを作成する方法は?
- 28. java swing内でディレクトリを作成する方法
- 29. JSONObjectを使用してJavaで正しいJsonArrayを作成する方法
- 30. Javaを使用してWLANアクセスポイントを表示するプログラムの作成方法
あなたはこれまでに何をしようとしていますか?あなたのコードを教えてください。 –