可运行的JAR缺less图像/文件(资源)

当我从eclipse将我的代码作为可运行的JAR导出时,即使它们实际上位于JAR中,我也将所有设置为抓取的文件(如button图像和其他文件)都丢失。 我已经在文件前面添加了getClass().getResource ,但是当我尝试运行JAR时甚至没有发生任何build议?

另外还有一百万个IF语句

使用JavaScript我把名字拉出网页,并以某种方式将它们串在一起(可能与数组一起)。 一旦我收集所有的名字,我需要另一个string,给出所有的电子邮件地址的名称。 电子邮件地址不在网页上,所以我必须以某种方式在我的脚本中列出每个可能的thisName = thisEmail。 我即将做出这样的陈述,但我认为必须有一个更有效的方法。 有什么build议么? var x = getElementById("names"); var name = x.InnerHTML; var email; if (name == 'Steve'){ email == 'steve462@gmail.com'; } if (name == 'Bob'){ email == 'duckhunter89@gmail.com'; } ….

没有匹配的函数 – ifstream open()

这是错误代码的一部分: std::vector<int> loadNumbersFromFile(std::string name) { std::vector<int> numbers; std::ifstream file; file.open(name); // the error is here if(!file) { std::cout << "\nError\n\n"; exit(EXIT_FAILURE); } int current; while(file >> current) { numbers.push_back(current); file.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); } return numbers; } 而且,我也不知道发生了什么。 整个事情编译在VS. 不过,我需要用dev cpp编译这个。 我在上面的代码中注释掉了错误。 错误是: 没有匹配的函数调用“std :: basic_ifstream :: open(std :: string&) 没有匹配函数调用'std :: basic_ofstream :: open(std :: string&) […]

stdout行默认情况下缓冲,无缓冲或不确定?

c99 7.9.13/7节规定: 在程序启动时,三个文本stream是预定义的,不需要明确打开 – 标准input(用于读取常规input),标准输出(用于写入常规输出)和标准错误(用于写入诊断输出)。 最初打开时,标准错误stream没有被完全缓冲; 标准input和标准输出stream是完全缓冲的,当且仅当stream可以被确定为不涉及交互设备时。 所以这是有道理的。 如果您将标准输出推送到文件中,则需要将其完全缓冲以提高效率。 但是当我们无法确定设备是否是非交互式(即正常输出到terminal)时,在标准中没有提到输出是线路缓冲还是无缓冲。 我问的原因是我的答案在这里 ,我应该插入一个fflush(stdout); 两个陈述之间: printf ("Enter number> "); // fflush (stdout); needed ? if (fgets (buff, sizeof(buff), stdin) == NULL) { … } 因为我没有用换行符终止printf 。 任何人都可以清除这个?

为什么在JavaScript中更改数组会影响数组的副本?

我写了下面的JavaScript: var myArray = ['a', 'b', 'c']; var copyOfMyArray = myArray; copyOfMyArray.splice(0, 1); alert(myArray); // alerts ['b','c'] alert(copyOfMyArray); // alerts ['b','c'] var myNumber = 5; var copyOfMyNumber = myNumber; copyOfMyNumber = copyOfMyNumber – 1; alert(myNumber); // alerts 5 alert(copyOfMyNumber); // alerts 4 这段代码声明了一个variablesmyArray并将其设置为一个数组值。 然后声明第二个variablescopyOfMyArray并将其设置为myArray 。 它对copyOfMyArray执行操作,然后警告myArray和copyOfMyArray 。 不知何故,当我在copyOfMyArray上执行操作时,似乎在myArray上执行相同的操作。 代码然后用一个数字值做同样的事情:它声明一个variablesmyNumber并将其设置为一个数字值。 然后声明第二个variablescopyOfMyNumber并将其设置为myNumber 。 它对copyOfMyNumber执行操作,然后警告myNumber和copyOfMyNumber 。 在这里,我得到了预期的行为: myNumber和copyOfMyNumber值不同。 […]

如何在大空间尺度上加速A *algorithm?

从http://ccl.northwestern.edu/netlogo/models/community/Astardemo ,我使用networking中的节点编码A *algorithm来定义成本最低的path。 该代码似乎工作,但它是太慢,当我在大的空间尺度使用它。我的景观有1000个补丁×1000个补丁的程度,1个补丁= 1个像素。 即使我减less400个修补程序×400个修补程序,1个修补程序= 1个像素,但它仍然太慢(我不能修改我的风景低于400个修补程序×400个修补程序)。 这里是代码: to find-path [ source-node destination-node] let search-done? false let search-path [] let current-node 0 set list-open [] set list-closed [] let list-links-with-nodes-in-list-closed [] let list-links [] set list-open lput source-node list-open while [ search-done? != true] [ ifelse length list-open != 0 [ set list-open sort-by [[f] […]

浏览器内存使用比较:内联onClick与使用JQuery .bind()

我有400个元素在页面上有点击事件绑定到他们(4种不同types的button,每个100个实例,每种types的点击事件执行相同的function,但具有不同的参数)。 我需要尽量减less这可能对性能造成的影响。 通过绑定单击事件到每个单独的事件(使用JQuery的bind() ),我正在采取什么样的性能(内存等)? 让内联onclick调用每个button上的function会更有效率吗? 编辑澄清:): 我实际上有一个表(使用JQGrid生成),每行都有数据列,其后是4个图标“button”列,删除和其他三个业务function,使AJAX调用回到服务器: | id | description | __ more data_ | _X__ | _ + __ | ____ | ____ | ————————————————- | 1 | ___数据____ | ____数据____ |图标|图标|图标|图标| | 2 | ___数据____ | ____数据____ |图标|图标|图标|图标| | 3 | ___数据____ | ____数据____ |图标|图标|图标|图标| | 4 | ___数据____ | ____数据____ |图标|图标|图标|图标| […]

如何在jqgrid中保存当前行

如果网格重新打开或页面刷新,如何预设当前行? 回答持久jqGrid列首选项描述如何保持列宽和一些其他参数。 在这个答案演示中,我点击了一些行,并按下F5。 先前单击的行未突出显示。 如何保存/恢复本地存储中的当前行? 更新 如果在应用程序中修改了jqGrid列结构,并且用户再次从浏览器中打开应用程序,restorecolumnstate会在缺less一些元素的情况下创build无效的colmodel。 这会导致refreshSearchingToolbar中的exception,它假定所有的colmodel元素都存在。 如何解决这个问题? 在这种情况下如何检测改性colmodol,而不是恢复colmodel? 还是应该restoreColumnState更新colModel,以便创build正确的数组? **更新2 ** 如果myColumnsState.permutation包含空值$grid.jqGrid("remapColumns", myColumnsState.permutation, true)创build无效的colmodel。 以下是在调用remapColumns之前和之后的VSdebugging器的截图 后: 我通过chaning代码来解决这个问题 if (isColState && myColumnsState.permutation.length > 0) { var i, isnull = false; for (i = 0; i < myColumnsState.permutation.length; i = i + 1) { if (myColumnsState.permutation[i] == null) { isnull = true; break; } } […]

如果只需要结果的低部分,那么哪个2的补码整数运算可以在input中不调零高位的情况下使用?

在汇编编程中,通常需要从寄存器的低位计算某些值,而不保证其他位为零。 在像C这样的高级语言中,只需简单地将input转换为较小的大小,然后让编译器决定是否需要单独清零每个input的高位,或者是否可以在结束之后剔除结果的高位事实。 对于x86-64(也就是AMD64)来说,这是非常常见的,原因有很多,其中一些出现在其他ISA中。 我将用64位x86作为例子,但其目的是一般性地询问/讨论2的补码和无符号的二进制算术,因为所有现代的CPU都使用它 。 (请注意,C和C ++不保证二进制补码4 ,并且这个有符号溢出是未定义的行为。) 作为例子,考虑一个可以编译成LEA指令的简单函数2 。 (在x86-64 SysV(Linux) ABI 3中 ,前两个函数参数在rdi和rsi ,返回值是rax , int是32位types。 ; int intfunc(int a, int b) { return a + b*4 + 3; } intfunc: lea eax, [edi + esi*4 + 3] ; the obvious choice, but gcc can do better ret gcc知道,即使是负符号整数,除了从右到左,input的高位不会影响进入eax 。 因此, 它保存了一个指令字节并使用 lea […]

Mongoose总是返回一个空的数组NodeJS

我已经尝试使用find和findOne并且都不返回文档。 find返回一个空数组而findOne返回null 。 在这两种情况下都是err 。 这是我的连接: function connectToDB(){ mongoose.connect("mongodb://localhost/test"); //i have also tried 127.0.0.1 db = mongoose.connection; db.on("error", console.error.bind(console, "connection error:")); db.once("open", function callback(){ console.log("CONNECTED"); }); }; 这是我架构: var fileSchema = mongoose.Schema({ hash: String, type: String, extension: String, size: String, uploaded: {type:Date, default:(Date.now)}, expires: {type:Date, default:(Date.now()+oneDay)} }); var Model = mongoose.model("Model", fileSchema); 我的查询在这里: Model.find({},function(err, file) […]