java调用dll操作ppt
发布网友
发布时间:2022-04-26 13:47
我来回答
共6个回答
热心网友
时间:2023-10-09 20:20
你这个操作可以简化为复制你这个ppt文件嘛,然后将ppt复制后的文件名称修改了下,不调用外部dll也可以实现吧
给你推荐两种方法:
方法1:使用Java执行cmd命令操作
try {
Runtime.getRuntime().exec("这里写dos命令");
} catch (IOException e) {
e.printStackTrace();
}
复制文件的cmd命令是[copy 文件1路径 文件2路径]
例如复制c盘上的test.ppt 到 c盘上的test1.ppt
命令:copy c:\test.ppt c:\test1.ppt
在Java中就是 copy c:\\test.ppt c:\\test1.ppt或者copy c:/test.ppt c:/test1.ppt
方法2:使用Java io复制文件
import java.io.*;
public class CopyAll {
public void copyDir(File from, File to) {
if (!to.exists()) {
to.mkdirs();
}
File[] files = from.listFiles();
for (int i = 0; i < files.length; i++) {
File file1 = files[i];
File file2 = new File(to.getPath() + File.separator
+ files[i].getName());
if (!file1.isDirectory()) {
copyFile(file1, file2);
} else {
copyDir(file1, file2);
}
}
}
public void copyFile(File src, File dest) {
try {
System.out.println(src.getAbsoluteFile() + " -> "
+ dest.getAbsoluteFile());
FileInputStream in = new FileInputStream(src);
FileOutputStream out = new FileOutputStream(dest);
byte[] buffer = new byte[1024];
while (in.read(buffer) != -1) {
out.write(buffer);
}
out.close();
in.close();
System.out.println("文件拷贝成功");
} catch (Exception e) {
System.out.println("文件拷贝失败");
}
}
public static void main(String[] args) {
CopyAll t = new CopyAll();
t.copyDir(new File("原文件路径"), new File("要复制文件路径"));
}
}
哦 不好意思,跑题了
Java是可以利用Java的JNI(Java native interface)Java本地接口调用dll的,但是这个dll与一般的dll不同,定义要遵循一些规则,所以Java是不能操作一般的dll。还有就是你得懂C或C++才能写出Java可调用的dll,我也只会操作helloword等简单的dll,还有一般Java操作word、excel、ppt这些文件都有开源项目,你可以到百度 Google上去搜索一下
例如:http://www.javayou.com/diary/1637
热心网友
时间:2023-10-09 20:21
java可以通过native方法调用自己写dll,这种方法叫JNI.
你可以想办法让这个自己写的dll去调用目标dll.
要找一下JNI的编写方法.
热心网友
时间:2023-10-09 20:21
。dll文件有实现转换的方法,你想用java调用这个功能,是这个意思吧???
不可能吧,.dll文件是微软的特有的文件,java调用可能要等到开源了吧.
热心网友
时间:2023-10-09 20:22
java是不能调用dll文件的,但是你可以看看apache的poi项目(http://poi.apache.org/),提供了可以操作office文件的API,但是这些API对office 2007的支持还不是很好,特别是ppt。2003应该没问题的。
热心网友
时间:2023-10-09 20:22
把你PPT的属性,用JAVA读取后,插入TXT文件里,然后用JAVA写一个生成JPG格式的类,读取TXT文件就行了.
热心网友
时间:2023-10-09 20:23
JNI 即是java本地接口