保存图片或者复制图片的方法
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.control.ScrollPane;
import javafx.scene.image.ImageView;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import java.io.*;
public class Jie extends Application {
@Override
public void start(Stage primaryStage){
MenuBar menubar = new MenuBar();
Menu menu1 = new Menu("操作");
MenuItem menuItem1 = new MenuItem("保存或复制");
menubar.getMenus().addAll(menu1);
menu1.getItems().addAll(menuItem1);
ImageView iv = new ImageView("234.jpg");
iv.setPreserveRatio(true);
//iv.setFitHeight(600);
HBox hb = new HBox();
hb.getChildren().add(iv);
BorderPane bp = new BorderPane();
bp.setTop(menubar);
ScrollPane sp = new ScrollPane(hb);
bp.setCenter(sp);
Scene scene = new Scene(bp);
primaryStage.setTitle("title");
primaryStage.setScene(scene);
primaryStage.show();
menuItem1.setOnAction(e->{savePictures();});
}
public void savePictures(){
//file1是已经被打开的图片
File file1 = new File("E:\\IDEA(diy)\\workplace2\\Picture\\src\\234.jpg");
FileChooser fileChooser = new FileChooser();
fileChooser.getExtensionFilters().addAll(
new FileChooser.ExtensionFilter("JPG图片","*.jpg"),
new FileChooser.ExtensionFilter("JPEG图片","*.jpeg"),
new FileChooser.ExtensionFilter("PNG图片","*.png"),
new FileChooser.ExtensionFilter("所有文件","*.*")
);
//file2是需要将图片保存在什么位置+图片名
File file2 = fileChooser.showSaveDialog(null);
if(file2!=null){
try {
FileInputStream fis = new FileInputStream(file1.getPath());
DataInputStream dis = new DataInputStream(fis);
FileOutputStream fos = new FileOutputStream(file2.getPath());
DataOutputStream dos = new DataOutputStream(fos);
byte[] bs = new byte[1024];
int length=-1;
while((length = dis.read(bs))!=-1){
dos.write(bs,0,length);
}
dis.close();
dos.flush();
fis.close();
fos.close();
System.out.println("文件保存完成!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void main(String[] args){
Application.launch(args);
}
}