小编Joe*_*Joe的帖子

JavaFX将于下个月的第一天上市

我试图从LocalDate对象获取下个月的第一天,但​​遇到了一些问题.

我有一个日期选择器,用户可以选择他们想要的任何日期,没有限制,我需要获得下个月的第一天,这是我想到的:

LocalDate localDate = myDatePicker.getValue();
LocalTime startTime = LocalTime.of(0, 0);

LocalDate endDate = LocalDate.of(localDate.getYear(), localDate.getMonthValue() + 1, 0);
Run Code Online (Sandbox Code Playgroud)

但是我看到选择12月份时可能会出现问题,如果发生这种情况则会发生

LocalDate.of(localDate.getYear(), localDate.getMonthValue() + 1, 0);
Run Code Online (Sandbox Code Playgroud)

应该失败,因为我将它传递给它一个月值13.现在我可以选择检查月份值是否为12月,如果是,我可以在年份中添加1并从0开始,如下所示:

if(localDate.getMonthValue() >= 12)
    LocalDate.of(localDate.getYear() + 1, 0, 0);
Run Code Online (Sandbox Code Playgroud)

但是我觉得必须有一种方法来解决这个问题.有谁知道我将13传递给LocalDate.of月值的假设是否会导致错误?如果是这样有一种方法可以做我想做的事情,看起来不那么糟糕,并使用构建方法?

java javafx datepicker

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

如何使用AES进行端到端加密

因此,我正在尝试实现一种简单的端到端加密方案,在该方案中,客户端与另一客户端进行握手,方法是使用其私钥进行加密,将公钥发送给第二个客户端私钥进行加密,然后再使用私钥解密客户端1的密钥并发回,因此客户端2具有公共密钥。我正在使用C#.Net提供的Aes类,似乎无法使其正常工作。

我收到的错误是关于填充的,我已经看到您可以完全删除填充,但是有人告诉我这不是一个好主意。谁能解释为什么?另外我怎么知道设置我的解密/加密的填充能够查看有效密钥。

这就是我所拥有的

class Program
{
    static void Main(string[] args)
    {
        Connection c = new Connection();
        Connection d = new Connection();
        var encrypted = c.EncryptMessage("stackoverflow");
        var decrypted = c.DecryptMessage(encrypted);
        var encryptedTwice = d.EncryptMessage(System.Text.Encoding.Default.GetString(encrypted));
        var decryptedOnce = c.DecryptMessage(encryptedTwice);
        var decryptedTwice = d.DecryptMessage(Encoding.ASCII.GetBytes(decryptedOnce));

        Console.WriteLine("Encrypted: " + System.Text.Encoding.Default.GetString(encrypted));
        Console.WriteLine("Decrypted: " + decrypted);

        Console.WriteLine("Decrypted twice: " + decryptedTwice);

        Console.ReadKey();
    }
}

class Connection
{
    private Aes _encryption;
    Connection()
    {
        _encryption = Aes.Create();
    }
    public byte[] EncryptMessage(string message)
    {
        byte[] encrypted;
        ICryptoTransform encryptor = _encryption.CreateEncryptor(_encryption.Key, …
Run Code Online (Sandbox Code Playgroud)

c# encryption cryptography aes

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

标签 统计

aes ×1

c# ×1

cryptography ×1

datepicker ×1

encryption ×1

java ×1

javafx ×1