gpt4 book ai didi

Java - 从另一个类输入字符串时出现 MalformedURLException,但在粘贴相同的字符串时不会出现异常

转载 作者:行者123 更新时间:2023-12-02 09:41:38 26 4
gpt4 key购买 nike

实例化新 URL 时,DrawImage 类中的下面第一段代码起作用。但是,当我从另一个类 RandomImage 输入相同的字符串(“https://www.purchased.com/hubfs/template/favicon.png ”)时,会出现以下错误:

我首先尝试手动输入字符串。

import java.awt.Image;
import java.io.IOException;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class DrawImage {

public static void main(String[] args) throws Exception {
String link = "https://www.purchased.com/hubfs/template/favicon.png";
System.setProperty("http.agent", "Chrome");
URL url = new URL(link);
Image image = ImageIO.read(url.openStream());

}
}

-> 按预期工作

然后,我改为提供一个 RandomImage(这是产生错误消息的那个!)

import java.awt.Image;
import java.io.IOException;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class DrawImage {

public static void main(String[] args) throws Exception {
RandomImage img = new RandomImage();
String link = img.link;
System.setProperty("http.agent", "Chrome");
URL url = new URL(link);
Image image = ImageIO.read(url.openStream());

}
}

以下类提供随机图像:

import java.net.*;
import java.io.*

public class RandomImage {
public static String link;

public RandomImage() throws Exception {
this.link = generateUsableImageLink();
}

但是当运行第二种方法时,我收到以下错误:

java.net.MalformedURLException: no protocol: "https://www.purchased.com/hubfs/template/favicon.png"
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at DrawImage.main(DrawImage.java:25)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at edu.rice.cs.drjava.model.compiler.JavacCompiler.runCommand(JavacCompiler.java:267).

我尝试(如上面的代码中所示)将 RandomImage 设为对象,但错误提要告诉我,当我使用 RandomImage 的输入创建 URL 实例时,发生了错误。

如果我猜测,该问题是由导入的包之间的某些交互或 RandomImage 中引发的错误引起的。逐个字符,我手动输入的String和RandomImage生成的String是一致的。我该如何解决这个问题?

最佳答案

方法generateUsableImageLink生成带引号的字符串。更改此方法,使其不在字符串上添加引号。

关于Java - 从另一个类输入字符串时出现 MalformedURLException,但在粘贴相同的字符串时不会出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57022136/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com