小编Gra*_*ush的帖子

net.sourceforge.jtds.jdbc.clobimpl无法强制转换为java.lang.string(jTDS)

useBlobs=false 使用XAPoolDataSource.

在调用resultset.getObject()时抛出类似'标题描述'的异常

我不知道问题是什么.

casting jtds

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

创建表单实例时出现反射错误

我一直在试验一个将扫描程序集的应用程序,检查任何表单类,然后查看它们的成员.

我用来查询程序集的代码是:

 Assembly testAssembly = Assembly.LoadFile(assemblyPath);

 Type[]  types = testAssembly.GetTypes();
 textBox1.Text = "";

 foreach (Type type in types)
 {
     if (type.Name.StartsWith("Form"))
     {
         textBox1.Text += type.Name + Environment.NewLine;

         Type formType = testAssembly.GetType();
         Object form = Activator.CreateInstance(formType);       
      }
 }
Run Code Online (Sandbox Code Playgroud)

我用它来查询标准表单:

 using System;
 using System.ComponentModel;
 using System.Windows.Forms;

 namespace TestForm
 {
     public partial class Form1 : Form
     {
         public Form1()
         {
            InitializeComponent();
         }
     }
 }
Run Code Online (Sandbox Code Playgroud)

我的问题是,当代码尝试时,Activator.CreateInstance(formType)我得到一个异常说明:"No parameterless constructor defined for this object." 我也可以通过检查formType看到'DeclaringMethod:'formType.DeclaringMethod'引发类型'System.InvalidOperationException'的异常

我不明白错误信息,因为表单有一个标准的构造函数,我错过了一些非常明显的东西吗?

编辑:type.Name显示代码尝试实例化的类型Form1.

c# reflection system.reflection

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

为什么这个布尔表达式无法翻转?

这就是我为编码棒项目写的东西.由于某种原因,它说这种方式不起作用,但如果我翻转它,它的工作原理.这是为什么?当它输入少于3个字符的内容时,它会根据codingbat获得错误消息.

// Given a string, return a new string where "not " has been added to the front. 
// However, if the string already begins with "not", return the string unchanged. 
// Note: use .equals() to compare 2 strings. 

// notString("candy") ? "not candy"
// notString("x") ? "not x"
// notString("not bad") ? "not bad"

        public String notString(String str) {
                  String m;
          if ( str.substring (0,3).equalsIgnoreCase("not") && str.length () >= 3 ) // this line doesn't work in it's current …
Run Code Online (Sandbox Code Playgroud)

java

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

编码的有效解决方案在Java中谜语starOut

我说的问题是这个

问题陈述:

返回给定字符串的一个版本,对于字符串中的每个星号(*),星号和其左右两侧的字符都消失了.所以"ab*cd"产生"ad"和"ab**cd"也产生"ad".

starOut("ab*cd")→"ad"

starOut("ab**cd")→"ad"

starOut("sm*eilly")→"傻"

我得到的解决方案有点乱,我使用了大约6个if语句和处理一个特定情况,寻找更简洁的ifs更清晰的解决方案.

请不要使用超过1个循环和集合或正则表达式.

以下是我的解决方案:

public String starOut(String str) {
  String result="";
  boolean currentFlag=false;

  if(str.length()==0)
  return result;

  for(int i=0;i+1<str.length();i++)
  {
    if(str.charAt(i)=='*')
    {
       i+=1;
       currentFlag=true;
       continue;
     }
     if(str.charAt(i+1)=='*')
     {
        i+=2;
        continue;
     }
     if((i>0)&&str.charAt(i-1)=='*')
     {
        continue;
     }
     result+=str.substring(i,i+1);
     currentFlag=false;

   }

  if(!(currentFlag)&&(str.length()==3)&&(str.charAt(1)=='*'))
      return ""; 

   if((str.charAt(str.length()-1)!='*')&!(currentFlag))
     return result+=str.charAt(str.length()-1);
    else
      return result;
}
Run Code Online (Sandbox Code Playgroud)

java

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

Do Loop 变量无法解析为变量

我有这段代码,我在其中循环直到用户输入 -1。但是,我收到错误:

键不能解析为变量

我之前使用过这个代码,我没有遇到任何问题,所以我不确定为什么我会遇到这个问题。

System.out.println("\nEnter a number, -1 to stop : ");
do {
  int key = scan.nextInt();
  int result = interpolationSearch(integerArray, key);
  if (result != -1) {
    System.out.println("\n"+ key +" element found at position "+ result);
  }
    break;
} while (key != -1);    // quit 
System.out.println("stop");
}
Run Code Online (Sandbox Code Playgroud)

java

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

理解 D 中的模板

我正在自学“D”,我有一个关于模板的问题,对某些人来说可能看起来很基本。例如,我目前正在阅读的文章(请参阅本文底部)包含以下代码:

int foo(int x)
{
    return x;
}

string foo(string x)
{
    return x;
}

void main()
{
    assert(foo(12345) == 12345);
    assert(foo("hello") == "hello");
}
Run Code Online (Sandbox Code Playgroud)

显然,这个特定的片段不够优雅,模板将消除重复:

foo(T)(T x)
{
    return x;
}

void main()
{
    assert(foo!(int)(12345) == 12345);
    assert(foo!(string)("hello") == "hello");
}
Run Code Online (Sandbox Code Playgroud)

The second example is rather basic since we are merely returning the value passed. My confusion arises by the fact that the function, however templated, still appears to be constrained to one type of value since I cannot …

d template-specialization

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

实体框架 - 获取文本列中的数据长度

当我在使用文本字段的表上工作时,我遇到了错误.

如果我得到varchar列的长度,我可以做

var result = (from t in context.tablename select t.fullname.Length)

但是,如果我在文本字段上运行相同的查询:

var result = (from t in context.tablename select t.biography.Length)

我收到错误:

Argument data type text is invalid for argument 1 of len function.

我已经完成了一些关于这个主题的阅读,我理解为什么SQL Server会引发这个错误,但我不确定它的最佳方法.我知道我可以返回结果,然后得到结果字符串的长度,但肯定有一种更简单的方法吗?

sql-server entity-framework sql-server-2008 entity-framework-4

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

不断收到错误TypeError:函数最多接受2个参数(给定3个)

我目前正在上大学的课程项目,涉及一个测验,该测验将所有背景数据存储在数据库中。通过添加外键,我试图找到一种方法来合并两个表之间的外键数据。例如,users表存储用户数据及其用户ID。数据表将存储有关测验级别等信息以及该特定用户ID。插入数据时如何从两个表中自动更新该信息?

该方法似乎不起作用,下面是一些代码。

difficulty= (1,)
users_id = (1,)  

#values of variables

def users_level(db,cursor,difficulty,users_id):

   cursor.execute("insert into Data (Level,UsersID) VALUES (?,?)",(difficulty),(users_id))

   db.commit()
Run Code Online (Sandbox Code Playgroud)

然后出现错误:

   cursor.execute("insert into Data (Level,UsersID) VALUES (?,?)",(difficulty),(check_id))
TypeError: function takes at most 2 arguments (3 given)
Run Code Online (Sandbox Code Playgroud)

有解决这个问题的方法吗?或者可能是一种更容易/更有效的方法,可以使用外键从其他表中自动增加ID /数据。谢谢。

python sqlite foreign-keys relational-database typeerror

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

document.getElementById适用于一个表单元素但不适用于另一个表单元素

我有一个网页,它采用10位数字代码,分为两个文本框,第一个文本框中有4个字符,第二个文本框中有6个字符.

我一直在尝试实现一些javascript,这样当用户在第一个文本框中输入第四个字符时,光标会跳转到第二个文本框.

该页面布局如下:

<asp:TextBox ID="txtCode1" onkeyup="Next()" runat="server" Width="45"    MaxLength="4"/>
<asp:TextBox ID="txtCode2" runat="server" Width="70" MaxLength="6"/>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下Javascript:

function Next() 
{
    var control1 = document.getElementById('<%= txtCode1.ClientID %>');
    var control2;

    if (control1.value.length == 3) 
    {
         control2 = document.getElementById['<%= txtCode2.ClientID %>'];
         control2.Focus();
    }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是该函数无法识别第二个文本框.如果我通过JavaScript的步骤没有问题是能够找到txtCode1并获得了长度,但当长度命中4个字符,它有填充control2getElementById()它设置控制2为未定义,然后control2.Focus()调用抛出一个错误的呼叫.

我不明白获取control1和control2的代码是如何相同但这不起作用,我错过了什么?

javascript asp.net

-1
推荐指数
1
解决办法
301
查看次数

java中equals()和startsWith()之间的区别

我正在使用codingBat练习练习递归以获得自己的娱乐.我正在做这个练习:

给定一个字符串,递归计算字符串中出现小写"hi"的次数,但是不计算在它们之前立即有"x"的"hi".

countHi2("ahixhi") ? 1
countHi2("ahibhi") ? 2
countHi2("xhixhi") ? 0
Run Code Online (Sandbox Code Playgroud)

我试图做这个代码,但它不断抛出超出范围的异常:

public int countHi2(String str){    
    if(str.length()<2){
        return 0;
    }
    else if(str.substring(0,3).equals("xhi")){
        return countHi2(str.substring(3));
    }
    else if(str.substring(0,2).equals("hi")){
        return 1+countHi2(str.substring(2));
    }
    else{
        return countHi2(str.substring(1));
    }
}
Run Code Online (Sandbox Code Playgroud)

我更改了substring()并等于startsWith()

else if(str.startsWith("xhi")){
            return countHi2(str.substring(3));
Run Code Online (Sandbox Code Playgroud)

现在效果很好,有人可以指出为什么我的第一个代码不正确吗?startsWith()和equals()之间有区别吗?

java recursion equals startswith

-1
推荐指数
1
解决办法
1259
查看次数