Java 什么是非法例外?

Java 什么是非法例外?,java,illegalstateexception,Java,Illegalstateexception,我正在尝试使用 连接。。。etc是完美的 我确切地知道它在哪里失败 ........... System.out.println(" Streaming " + dataFile); pstmtFld.setAsciiStream(1, dataStream, -1); // This line fails System.out.println("check the above line"); // This does not go to console ........... 例

我正在尝试使用

连接。。。etc是完美的


我确切地知道它在哪里失败

 ...........
 System.out.println(" Streaming " + dataFile);
 pstmtFld.setAsciiStream(1, dataStream, -1); // This line fails
 System.out.println("check the above line"); // This does not go to console
 ...........
例外是

线程“main”java.lang.IllegalStateException中的异常:示例失败。

[ODBC Teradata驱动程序]精度无效:CBF值超出范围


这是我要上传的表格。它是一种
.csv
格式,当我通过记事本打开它时,它看起来像这样

1,9,Win
2,9,Winc
3,9,Wi
为什么我会得到这个例外?我怎样才能改进它?据我所知,问题是
pstmtFld.setascistream(1,dataStream,-1)
以某种方式不接受数据集并引发异常

通常用于表示“在非法或不适当的时间调用了某个方法”。但是,这看起来不像是它的典型用法

您链接到的代码显示,它可以在第259行的代码中抛出,但只能在将
SQLException
转储到标准输出后抛出


我们不能仅仅从那个异常判断出什么是错误的——更好的代码应该使用原始的
SQLException
作为“原因”异常(或者只是让原始异常向上传播)——但是您应该能够看到关于标准输出的更多细节。查看这些信息,您应该能够看到导致异常的原因,并对其进行修复。

非法状态异常是未经检查的异常

它表示方法在错误的时间被调用

例如:

Thread t = new Thread();
t.start();
//
//
t.start();
输出:

Runtime Excpetion: IllegalThreadStateException

我们无法再次启动线程,它将抛出IllegalStateException。

IllegalStateException表示方法在错误的时间被调用。在下面的示例中,我们可以看到
remove()
方法在其迭代器处于循环(非法调用)时对元素进行变异,Java捕获并抛出该循环:

package com.concepttimes.java;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
 
public class IllegalStateExceptionDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        List al = new ArrayList();
        al.add("Sachin");
        al.add("Rahul");
        al.add("saurav");
        Iterator itr = al.iterator();  
        while (itr.hasNext()) {           
            itr.remove();
        }
    }
}
请参阅下面的链接了解更多详细信息。
什么是
标准输出
?@boratsagdiev:in
System.out
-进程中的标准输出流,如果有附加的,通常写入控制台,或者通常作为服务器端进程中的日志文件捕获。因为我们不知道你是如何运行代码的,所以很难告诉你去哪里查找。我已经编辑了这个问题。我确切地知道它在哪里失败<代码>pstmtFld.setascistream(1,数据流,-1)不存在execute@JonSkeet-这是使用IllegalStateException的好例子还是坏例子?请告知。谢谢顺便说一句,我不是OP。他只是个模仿者。我是真正的博拉特。@BoratSagdiyev:在我看来相当合理。每当我捕捉到“不可能发生”的事情,并且没有其他更具描述性的异常类型时,我通常会抛出一个
IllegalStateException
。例如,如果我编写代码来显示一个图像,并且图像有一个负宽度-抛出任何其他东西都会更糟,这样我就可以编写自己的未检查异常(推荐的做法,但是你可以考虑把它变成一个检查异常),或者使用内置的<代码> ILLaltStaleExtExabue/Cuth>一个。是否可能是文件长度(-1)导致了这种情况?Nick,你错了!上面的答案实际上让我正确地解决了代码中类似的问题。你不应该仅仅因为答案涉及老问题就否决它。这对于新的SO用户来说是最不合适的,也是最令人沮丧的。这实际上是一个很好的例子,说明了“非法状态例外”的恰当用法。我得仔细读一读才能明白@尼克需要提高他的阅读理解能力。欢迎来到Stack Overflow!虽然这段代码可以解决这个问题,但如何以及为什么解决这个问题将真正有助于提高您的帖子质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。向下投票:代码似乎与所问问题完全无关,只有代码没有解释其相关性。我怀疑这是Szymon的一个错误,这段代码是用于另一个SO问题的。
public class UserNotFoundException extends Exception {
    public UserNotFoundException(String message) {
        super(message)