小编pan*_*kti的帖子

从 JDK 1.5.0_06 迁移到 1.8.0_66 - 替换已弃用的 Java JPEG 类

我目前正在将应用程序从 JDK 1.5.0_06 迁移到 1.8.0_66。在应用程序中,有多个文件使用 com.sun.image.codec.jpeg 类。当我尝试创建 JAR 时,出现以下错误。

error: package com.sun.image.codec.jpeg does not exist import com.sun.image.codec.jpeg.*;
Run Code Online (Sandbox Code Playgroud)

我参考了有关为 Java 7 替换已弃用的 Java JPEG 类的博客,我的错误已清除。但现在我收到以下警告:

warning: JPEGImageWriter is internal proprietary API and may be removed in a future release import com.sun.imageio.plugins.jpeg.JPEGImageWriter;
Run Code Online (Sandbox Code Playgroud)

博客中有问题的代码:

public static void saveAsJPEG(String jpgFlag, BufferedImage image_to_save, float JPEGcompression, FileOutputStream fos) throws IOException {
    // Image writer
    JPEGImageWriter imageWriter = (JPEGImageWriter) ImageIO.getImageWritersBySuffix("jpeg").next();
    ImageOutputStream ios = ImageIO.createImageOutputStream(fos);
    imageWriter.setOutput(ios);

    //and metadata
    IIOMetadata imageMetaData = imageWriter.getDefaultImageMetadata(new ImageTypeSpecifier(image_to_save), null);

    if (jpgFlag …
Run Code Online (Sandbox Code Playgroud)

java jpeg java-8 javax.imageio

4
推荐指数
1
解决办法
905
查看次数

验证页码/范围以进行打印

我正在编写一个用于匹配特定模式的正则表达式,如下所示。

我们都熟悉我们在通过 Word 文档打印选择性页面时给出的模式。IE

  • 我们可以使用逗号和连字符
  • 不允许使用其他特殊字符
  • 应该以数字开头和结尾
  • 逗号和连字符不允许一起使用等

有效值:

1, 3, 6-9
1-5, 5
6, 9
Run Code Online (Sandbox Code Playgroud)

无效值:

,5
5-,9
9-5,
2,6-
Run Code Online (Sandbox Code Playgroud)

我一直在使用该模式,(([0-9]+)|(\\d.*[-,]\\d.*)+)但它不适用于所有排列组合。

任何帮助将不胜感激!

java regex

3
推荐指数
2
解决办法
2417
查看次数

Java Swing UI对齐问题

根据我的要求,UI应该显示如下图所示。

在此处输入图片说明

我试图通过使用下面的代码来达到相同的目的。

package com.samples;

import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.CompoundBorder;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;


public class MyFrame extends JFrame {

    public MyFrame() {
    }

    public static void main(String[] args) {
        Runnable runner = new Runnable() {
            public void run() {
                JFrame frame = new JFrame("My Sample Frame");
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setSize(1000, 800);
                frame.setVisible(true);

                JPanel jpOPanel = new JPanel();
                jpOPanel.setBorder(new CompoundBorder(new …
Run Code Online (Sandbox Code Playgroud)

java swing layout-manager gridbaglayout

0
推荐指数
1
解决办法
98
查看次数