无法从 Java 中的 JDateChooser 检索日期

发布于 2024-11-24 23:13:19 字数 1230 浏览 0 评论 0原文

我正在使用 此处JDateChooser

但是在控制台中显示时,我无法检索使用方法 setDateFormatString 设置的格式的日期。

在此处输入图像描述

第一个标签显示从 JDateChooser 检索的实际日期,而第二个标签显示格式我已经设置了。当我从 JDateChooser 选择日期时,我得到的日期为 22-07-2011,如图所示。但是当我使用 getDate 方法时,它会给我日期为 Fri Jul 22 00:00:00 GMT+05:30 2011。我只想要 22-07-2011

这是我的代码。我正在使用 Netbeans IDE 7.0

public JDateChooser() {
    initComponents();
    dateChooser.setDateFormatString("dd-MM-yyyy");
}
private void btnDisplayDateActionPerformed(java.awt.event.ActionEvent evt) {
    String dateFromDateChooser = dateChooser.getDate().toString();
    lblDate.setText(dateFromDateChooser);
    lblDateFormat.setText(dateChooser.getDateFormatString().toString());
    System.out.println(dateFromDateChooser);
}
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        @Override
        public void run() {
            new JDateChooser().setVisible(true);
        }
    });
}

I am using JDateChooser from here

However I can not retrieve the date in format set with the method setDateFormatString while displaying it in console.

enter image description here

In first label shows actual date retrieved from JDateChooser while second label shows the format which I have set. When I select date from JDateChooser I get the date as 22-07-2011 as shown in image. But when I use getDate method, it will give me date as Fri Jul 22 00:00:00 GMT+05:30 2011. I want only 22-07-2011.

Here is my code. I am using Netbeans IDE 7.0

public JDateChooser() {
    initComponents();
    dateChooser.setDateFormatString("dd-MM-yyyy");
}
private void btnDisplayDateActionPerformed(java.awt.event.ActionEvent evt) {
    String dateFromDateChooser = dateChooser.getDate().toString();
    lblDate.setText(dateFromDateChooser);
    lblDateFormat.setText(dateChooser.getDateFormatString().toString());
    System.out.println(dateFromDateChooser);
}
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        @Override
        public void run() {
            new JDateChooser().setVisible(true);
        }
    });
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

囚你心 2024-12-01 23:13:19

您可以使用 String.format 方法来获得所需的结果。

Date dateFromDateChooser = dateChooser.getDate();
String dateString = String.format("%1$td-%1$tm-%1$tY", dateFromDateChooser);

You can use the String.format method to get the desired result.

Date dateFromDateChooser = dateChooser.getDate();
String dateString = String.format("%1$td-%1$tm-%1$tY", dateFromDateChooser);
¢好甜 2024-12-01 23:13:19

试试这个

java.text.SimpleDateFormat fmt = new java.text.SimpleDateFormat("dd-MM-yyyy");
String formattedDate = fmt.format(dateChooser.getDate());

Try this

java.text.SimpleDateFormat fmt = new java.text.SimpleDateFormat("dd-MM-yyyy");
String formattedDate = fmt.format(dateChooser.getDate());
不乱于心 2024-12-01 23:13:19

有两种选择

1/你已经下载了代码源

    calDealDate.setPreferredSize(new Dimension(90, 23));
    calDealDate.setDateFormat(new SimpleDateFormat("dd.MM.yyyy"));
    calDealDate.setSpiningCalendarField(Calendar.DAY_OF_MONTH);
    calDealDate.setFont(new Font("SansSerif", Font.BOLD, 12));
    calDealDate.setBackground(AppVariables.fieldColor);
    calDealDate.addChangeListener(new ChangeListener() {

        @Override
        public void stateChanged(ChangeEvent e) {
            //here is your date depends of previous setings
        }
    });
    calDealDate.setToolTipText(" some tooltip text  ");

2/你已经下载了 jar 文件,那么你必须从 API 编辑中找到这个方法或等效方法

:也许我更喜欢从代码源开始,只需将其导入到项目中

there are two choises

1/ you already dowloaded code source

    calDealDate.setPreferredSize(new Dimension(90, 23));
    calDealDate.setDateFormat(new SimpleDateFormat("dd.MM.yyyy"));
    calDealDate.setSpiningCalendarField(Calendar.DAY_OF_MONTH);
    calDealDate.setFont(new Font("SansSerif", Font.BOLD, 12));
    calDealDate.setBackground(AppVariables.fieldColor);
    calDealDate.addChangeListener(new ChangeListener() {

        @Override
        public void stateChanged(ChangeEvent e) {
            //here is your date depends of previous setings
        }
    });
    calDealDate.setToolTipText(" some tooltip text  ");

2/ you already dowloaded jar file, then you have to find this method or equivalent from API

EDIT: maybe I would be preffered to start with code source, just import that into project

不顾 2024-12-01 23:13:19

试试这个

   public void calendarExpale(){
    JPanel content = new JPanel();
    content.setLayout(new FlowLayout());
    final JTextField textField = new JTextField(15);
    JDateChooser chooser = new JDateChooser();

   chooser.setSize(15, 10);
  chooser.addPropertyChangeListener("date", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {

    JDateChooser chooser = (JDateChooser)evt.getSource();
    SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:MM:SS");
    textField.setText(formatter.format(chooser.getDate()));
}
  });

  content.add(textField);
    content.add(chooser);
}

Try This one

   public void calendarExpale(){
    JPanel content = new JPanel();
    content.setLayout(new FlowLayout());
    final JTextField textField = new JTextField(15);
    JDateChooser chooser = new JDateChooser();

   chooser.setSize(15, 10);
  chooser.addPropertyChangeListener("date", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {

    JDateChooser chooser = (JDateChooser)evt.getSource();
    SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:MM:SS");
    textField.setText(formatter.format(chooser.getDate()));
}
  });

  content.add(textField);
    content.add(chooser);
}
青柠芒果 2024-12-01 23:13:19

使用字符串格式方法,它将帮助您以及如何使用它,请参阅此

https://www.youtube.com/watch?v=FEM0BpZSXmU

此链接具有与您想要的相同的教程。

Use String Format Method, it will help you and how to use it see this

https://www.youtube.com/watch?v=FEM0BpZSXmU

this link has same to same tutorial as you want.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文