الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف انفذ امر في موجة الاوامر + معرفة مسار تنفيذ البرنامج ؟؟

بدأه AboShabrah في 25 فبراير 2011 · 18 رد · 1,547 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

كيف حال الشباب ان شاء الله تمام ؟!

عندي سؤالين الاول ابي انفذ اوامر في سطر الاوامر وطباعة نتائجة طبعا برتامج Console

وحبيت اسال كيف اعرف مسار تنفيذ البرنامج اتمنى الاجابات ياشباب

في الانتظار :cool:

سبحان الله وبحمده - - - سبحان الله العظيم

#2
String result = "";
		try{


		Process p = Runtime.getRuntime().exec("Command");
		BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); 
		String line;
		while ((line = input.readLine()) != null) { 
			result += line; 
		} 
		input.close();
		} 
		catch(Exception e){ 
			e.printStackTrace(); 
		}
		System.out.println(result);

تم التعديل

تم تعديل هذه المشاركة بواسطة M.Allaw في 25 فبراير 2011 في 22:37


HeartOutputStream myHeart;
OutputStream myHeartOutStream;

myHeartOutStream = MAllaw.getHeart().getOutputStream();
myHeart = new HeartOutputStream(myHeartOutStream);

while(myHeart.isStillBeating())
myHeart.write("I ♥ Java");

#3

تظهر اخطاء اخي الفاضل برجاء ادراج كود كامل بما فيها الاستعائات

سبحان الله وبحمده - - - سبحان الله العظيم

#4
AboShabrah كتب:

تظهر اخطاء اخي الفاضل برجاء ادراج كود كامل بما فيها الاستعائات

تنقص فقط كلمه

try {

بعد السطر الاول

Software Developer
Mahmoudkelany.com


 

#5
اقتباس
package javaapplication9;

import java.io.*;

import java.io.IOException;

public class Main {

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

try {

String result;

Process p = Runtime.getRuntime().exec("Your command");

BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));

String line;

while ((line = input.readLine()) != null) {

result += line;

}

input.close();

}

catch(Exception e){

e.printStackTrace();

}

System.out.println(result);

}

}

dالكلمة بالاحمر تظهر خطأ + اجابة السؤال الثاني لو تكرمتم :)

سبحان الله وبحمده - - - سبحان الله العظيم

#6
اقتباس
user.dir: User's current working directory

System.getProperty('user.dir')
#7

الله يعطيك العافية اخي الغالي برجاء لو فية موضوع للتحدث عن System.getProperty واستخداماتها الرجاء ادراجة ولا الف شكر لك وفي انتظار الكود الاول

سبحان الله وبحمده - - - سبحان الله العظيم

#8
AboShabrah كتب:

dالكلمة بالاحمر تظهر خطأ + اجابة السؤال الثاني لو تكرمتم :)

اخى الكريم

ذكرت لك ان تضعها بعد اول سطر

وليس كأول سطر

كى يتم تعريف المتغير خارج الـ try...catch block

AboShabrah كتب:

الله يعطيك العافية اخي الغالي برجاء لو فية موضوع للتحدث عن System.getProperty واستخداماتها الرجاء ادراجة ولا الف شكر لك وفي انتظار الكود الاول

للتعرف عليها انظر هذا الموضوع

/index.php?showtopic=232488

لكن لاستخدامها

دا بيكون حسب الهدف الذى ترغبه

Software Developer
Mahmoudkelany.com


 

#9
اقتباس
package javaapplication12;

import java.io.*;

public class Main {

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

String result;

try{

Process p = Runtime.getRuntime().exec("Your command");

BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));

String line;

while ((line = input.readLine()) != null) {

result += line;

}

input.close();

}

catch(Exception e){

e.printStackTrace();

}

System.out.println(result);

}

}

الي بالاحمر خطأ واسف على الازعاج :blush:

سبحان الله وبحمده - - - سبحان الله العظيم

#10
AboShabrah كتب:

الي بالاحمر خطأ واسف على الازعاج :blush:

لا بد من وضع قيمه ابتدائيه للمتغير

هذا هو الكود بعد التعديل

import java.io.*;

public class Main {

	public static void main(String[] args) throws IOException {
    	String result = "";
    	try {
        	Process p = Runtime.getRuntime().exec("Your command");
        	BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
        	String line;
        	while ((line = input.readLine()) != null) {
            	result += line;
        	}
        	input.close();
    	} catch (Exception e) {
        	e.printStackTrace();
    	}
    	System.out.println(result);
	}
}

Software Developer
Mahmoudkelany.com


 

#11

معلش انا وضعت الكود على عجله فنسيت اضبط هذه التفاصيل أما الـtry فالخطأ عند القص , المهم الفكرة الأساسية في هذا السطر :

 Process p = Runtime.getRuntime().exec("Your command");


HeartOutputStream myHeart;
OutputStream myHeartOutStream;

myHeartOutStream = MAllaw.getHeart().getOutputStream();
myHeart = new HeartOutputStream(myHeartOutStream);

while(myHeart.isStillBeating())
myHeart.write("I ♥ Java");

#12

شكرا لكم اخواني لكن عند التنفيذ يظهر خطأ

اقتباس
java.io.IOException: Cannot run program "dir": CreateProcess error=2, þþíÊÚÐÑ Úáì ÇáäÙÇã ÇáÚ辄 Úáì ÇáãáÝ ÇáãÍÏÏ

at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)

at java.lang.Runtime.exec(Runtime.java:593)

at java.lang.Runtime.exec(Runtime.java:431)

at java.lang.Runtime.exec(Runtime.java:328)

at javaapplication12.Main.main(Main.java:9)

Caused by: java.io.IOException: CreateProcess error=2, þþíÊÚÐÑ Úáì ÇáäÙÇã ÇáÚ辄 Úáì ÇáãáÝ ÇáãÍÏÏ

at java.lang.ProcessImpl.create(Native Method)

at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)

at java.lang.ProcessImpl.start(ProcessImpl.java:30)

at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)

... 4 more

وش الهرجة :)

سبحان الله وبحمده - - - سبحان الله العظيم

#13
AboShabrah كتب:

شكرا لكم اخواني لكن عند التنفيذ يظهر خطأ

وش الهرجة :)

اولا شكل الخطأ غير مفهوم

ما هو الكود الذى استخدمته

يرجى الانتباه الى انك تقوم بكتابه الـ command الذى تريده مكان الكلمه

Your command

بالتوفيق

Software Developer
Mahmoudkelany.com


 

#14

بالفعل اخي محمود الظاهر الأخ نفذها مثلما هي وبالتالي طلعله IOException happy.gif


HeartOutputStream myHeart;
OutputStream myHeartOutStream;

myHeartOutStream = MAllaw.getHeart().getOutputStream();
myHeart = new HeartOutputStream(myHeartOutStream);

while(myHeart.isStillBeating())
myHeart.write("I ♥ Java");

#15

لأا كتبت الكود dir بدال Your command وخرج الخطا والكود صحيح نفذه في موجة الاوامر

الكود الي استعملتة كامل

اقتباس
package javaapplication12;

import java.io.*;

public class Main {

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

String result = "";

try {

Process p = Runtime.getRuntime().exec("dir");

BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));

String line;

while ((line = input.readLine()) != null) {

result += line;

}

input.close();

} catch (Exception e) {

e.printStackTrace();

}

System.out.println(result);

}

}

سبحان الله وبحمده - - - سبحان الله العظيم

#16

جرب

Process p = Runtime.getRuntime().exec(new String[]{"cmd", "/c", "dir"});
#17

ممتاز اخي الكود شغال لكن يعرض النتائج في سطر واحد ! هل من حل معروف؟

ممتاز اخي الكود شغال لكن يعرض النتائج في سطر واحد ! هل من حل معروف؟

سبحان الله وبحمده - - - سبحان الله العظيم

#18

فقط أضف \n

import java.io.*;

public class Main {

public static void main(String[] args) throws IOException {
		StringBuilder result = new StringBuilder();
		try {
			Process p = Runtime.getRuntime().exec(new String[]{"cmd", "/c", "dir"});
			BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
			String line;
			while ((line = input.readLine()) != null) {
				result.append(line+"\n");
			}
			input.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		System.out.println(result);
	}
}
#19

شكرا لكم جميعا اخواني الله يعطيكم العافية

سبحان الله وبحمده - - - سبحان الله العظيم

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…