public class OSExecuteException extends RuntimeException {
private static final long serialVersionUID = 5901555192879431127L;
public OSExecuteException(String msg){
super(msg);
}
}
-----------------------
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
*
* 进程控制
*
*/
public class OSExecute {
public static void command(String command) {
boolean err = false;
try {
Process proc = new ProcessBuilder(command.split(" ")).start();
BufferedReader reader = new BufferedReader(new InputStreamReader(
proc.getInputStream()));
String s = null;
while ((s = reader.readLine()) != null) {
System.out.println(s);
}
reader.close();
BufferedReader errReader = new BufferedReader(
new InputStreamReader(proc.getErrorStream()));
// 如果进程执行出错,则输出错误信息
while ((s = errReader.readLine()) != null) {
System.out.println(s);
err = true;
}
errReader.close();
} catch (Exception e) {
// 处理win2K默认抛出的异常
if (!command.startsWith("CMD /C")) {
command("CMD /C " + command);
} else {
throw new RuntimeException(e);
}
}
if (err) {
throw new OSExecuteException("Errors executing " + command);
}
}
public static void main(String[] args) {
OSExecute.command("javap OSExecute");
}
}
分享到:
相关推荐
Java IO应届生培训讲义是一份面向刚毕业的大学生进行Java IO相关知识的培训资料,它涵盖了Java IO的基础知识、不同的IO模型以及Java中的BIO、NIO和AIO高级IO类库。下面详细解释这些知识点: 1. 用户空间和内核空间 ...
### Java IO 流详解 #### 一、Java IO 流概念及作用 Java IO(Input/Output)流是Java编程语言中的一个重要组成部分,主要用于处理数据的输入与输出。流(Stream)可以理解为一组有序的、有起点和终点的字节集合,...
JAVA IO同步、异步详解 IO 操作是计算机系统中最基本的操作之一,它可以分为同步(Synchronous)和异步(Asynchronous)两种模式。同步IO 是指应用程序在执行IO 操作时,需要等待IO 操作完成后才能继续执行其他操作...
在这个"javaIO案例"中,我们关注的是如何使用核心的Java IO类,如`InputStream`、`OutputStream`、`FileInputStream`、`FileOutputStream`以及`PipedInputStream`和`PipedOutputStream`等管道流。这些类构成了Java ...
- **流程概述**:当一个进程需要从磁盘读取数据时,它会发起一个系统调用(如`read()`),随后控制权转移到内核。内核通过DMA技术将数据从磁盘读入内核缓冲区,再由内核将数据拷贝到进程的用户空间中。 - **3.2 ...
Java IO流是Java平台中处理输入输出操作的核心组件,它允许程序与各种数据源(如文件、设备、网络连接)进行交互。IO流系统由多个类和接口组成,它们位于java.io包中,为开发者提供了读写数据的丰富功能。在Java中,...
Java IO系统是Java编程语言中不可或缺的一部分,它提供了丰富的类库来处理输入和输出操作,包括文件读写、网络通信、数据转换等。这个资料包包含了一份PPT、一个源代码示例以及一些相关的文档,旨在帮助我们深入理解...
Java IO与NIO详解 Java IO(Input/Output)系统是Java平台中处理输入和输出的基础框架,它允许程序读取和写入数据到各种不同的源和目标,如文件、网络连接、内存缓冲区等。Java IO自1.0版本以来就是标准库的一部分...
Java IO 支持文件锁定机制,通过`FileLock`类可以防止多个进程同时修改同一个文件,从而保证数据的一致性和完整性。 #### 六、后续可以探讨的问题 - 如何有效地处理大文件的读写操作? - 如何利用NIO的新特性来...
3. **线程池与IO**:线程池可以有效地管理和控制并发的IO操作,如定时读取文件或轮询网络数据。 4. **IO异常处理**:在多线程环境中,每个线程都应该捕获并处理自己的IO异常,以避免一个线程的异常影响其他线程。 ...
Java IO流操作是Java编程中不可或缺的一部分,它用于在程序和外部资源(如磁盘、网络、内存等)之间传输数据。在这个详细的源代码下载中,我们可以通过四篇相关的CSDN博客文章来深入理解Java IO流的工作原理和实际...
Java IO模型1主要涉及到的是Java在处理网络数据交互时的不同方式。这里有五种主要的IO模型,它们分别是阻塞IO(BIO)、非阻塞IO、IO多路复用、信号量和异步IO(AIO)。理解这些模型的关键在于区分同步与异步以及阻塞...
在Java编程中,有时我们需要创建并运行多个独立的Java子进程以提高程序的稳定性和并发性。这样的设计允许每个子进程在不同的Java虚拟机(JVM)实例中运行,即使其中一个进程崩溃,也不会影响其他进程的正常运行。...
### Java IO系统总结 Java IO(输入/输出)系统是Java平台的重要组成部分,它提供了用于文件和数据流处理的基础框架。根据数据传输的基本单位不同,Java IO系统主要分为两大类:字节流和字符流。这两类流又各自包含...
1. **管道(Pipes)**:Java提供了`java.io.PipedInputStream`和`java.io.PipedOutputStream`类,用于创建管道连接两个流,一个进程写入数据,另一个进程读取数据。管道通信简单但单向,适用于父子进程或兄弟进程...
JavaIO ##JavaIO基础面试题 1. 什么是IO 它是一种数据的流从源头到目的地。比如文件拷贝,输入流和输出流都包括了。输入流是从文件中读取数据到存储到进程(process)中,输出流是从进程中读取数据然后写入到目标文件...
Java IO 相关基础知识主要涉及网络通信、协议、套接字以及不同的IO模型。首先,IP协议负责在网络中传输数据,它将数据分割成小块并通过IP包发送,但不保证数据的可靠传输或顺序。TCP(传输控制协议)则是一个面向...
在Java编程中,"java.io.FileNotFoundException: ***** (Too many open files)" 是一个常见的错误,意味着程序尝试打开的文件数量超过了操作系统的限制。这个错误通常出现在处理大量文件或长时间运行的程序中,尤其...
在Java中,`java.io.PipedInputStream`和`java.io.PipedOutputStream`是用于创建管道的类。PipedInputStream作为接收端,它从管道中读取数据;而PipedOutputStream则是发送端,负责将数据写入管道。两者需要通过构造...