我制作了两个应用程序,旨在同时运行(我不想将它们组合在一起),一个应用程序从某个文件读取,另一个应用程序写入该应用程序。当其中一个或另一个没有运行错误时,但是如果它们都运行get获取访问被拒绝错误。第一 相关代码:JAVA:我的两个应用程序如何访问同一个文件?
class MakeImage implements Runnable {
@Override
public void run() {
File file = new File("C:/Users/jeremy/Desktop/New folder (3)/test.png");
while (true) {
try{
//make image
if(image!=null)
{
file.createNewFile();
ImageIO.write(image, "png", file);
hello.repaint();}}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
第二的相关代码:
BufferedImage image = null;
try {
// Read from a file
image = ImageIO.read(new File("C:/Users/jeremy/Desktop/New folder (3)/test.png"));
}
catch(Exception e){
e.printStackTrace();
}
if(image!=null)
{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "png", baos);
baos.flush();
byte[] imageInByte = baos.toByteArray();
baos.close();
returns=Base64.encodeBase64String(imageInByte);
}
我看了看这个:Java: how to handle two process trying to modify the same file,但那是当两者都书面方式到这里只有一个文件。我按照前者的答案中的建议尝试了以后的重试方法,但没有任何运气。任何帮助将不胜感激。
数据库引擎? – Randy 2012-07-17 18:06:06
复制写入? – Joel 2012-07-17 18:14:04