我实现了一个简单的C#应用程序,它将大约350000条记录插入到数据库中.这曾经运作良好,过程大约需要20分钟.
我创建了一个进度条,让您大致了解记录插入的进度.当进度条达到约75%时,它会停止前进.我必须手动终止程序,因为该过程似乎没有完成.如果我使用较少的数据(如10000),则进度条结束并且过程完成.但是,当我尝试插入所有记录时,这将不再发生.
请注意,如果我等待更长时间手动终止程序,则会插入更多记录.例如,如果我在15分钟后终止程序,则插入200000条记录,而如果我在20分钟后终止程序,则插入250000条记录.
该程序使用单个线程.在这个过程完成之前,我无法做任何其他事情.这与线程或进程有什么关系吗?
任何反馈将不胜感激.
谢谢.
我需要在JFrame中放置两个椭圆.每个椭圆形都在不同的内部阶层.问题在于使用BorderLayout,当使用CENTER时,它允许您跨越整个帧.但是我不能添加第二个椭圆,因为它在第一个椭圆上被覆盖.
我可以使用什么布局管理器将这两个椭圆涂在整个屏幕上?这些将是动画的,因此最终可能会相互叠加,所以我需要它们都在整个屏幕上绘制.
- - 编辑 - -
椭圆形是一个JPanel所以我有两个JPanels,两个不同的椭圆形从不同的位置开始.
我试过像这样使用BoxLayout:
mainPanel = new JPanel();
mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.PAGE_AXIS));
mainPanel.add(drawPanel1);
mainPanel.add(drawPanel2);
frame.getContentPane().add(BorderLayout.CENTER, mainPanel);
Run Code Online (Sandbox Code Playgroud)
然而,一旦椭圆形穿过中心,当一个面板占据屏幕的上半部分而另一个面板占据屏幕的下半部分时,它就会消失.除此之外它工作正常.我唯一需要的是修复布局,以便它们占据所有屏幕
我也试过GridLayout有1行和1列,但仍然没有填满整个帧.
我对c#很新.有人可以给我一个正确的方向,我该如何解析下面的文本文件?
我试图实施的程序将执行以下操作:
它会要求用户输入目录.它将在目录中搜索文本文件.它将遍历文本文件,解析它们,并将它们保存在一个表数据库中.文本文件具有以下结构:
(这是文本文件1)
001 - Milan (Citizens)
Pitch Street
John Doe 15, F1 2 35022I
Janette Doe 17, F7 2 32345I
Angel Street
Mark Skate 12, F3 2 35532I
Jacqueline Skate 18, F6 2 54343I
Run Code Online (Sandbox Code Playgroud)
(这是文本文件2)
002 - Rome (Citizens)
Colosseum Street
Christian Troy 21, F8 5 21354I
Janette Doe 17, F7 2 23453T
Pope Street
Sean McNamara Villa McNamara 12424I
Julia McNamara Villa McNamara 43344I
Run Code Online (Sandbox Code Playgroud)
等等...
001 - 米兰等......是小镇.这可以在每个文本文件的开头找到一次.斗兽场街等...是街道名称.然后对于每条街道都有一个包含3列的列表:名称,地址,身份证.
我需要的是将每个公民插入数据库.数据库将有一个表格,格式如下:
姓名,地址,id_card,城镇,街道
因此,每个公民必须存放在某种阵列中,阵列将包含公民各自的城镇和公民.
如果有人能给我一些关于如何解析这个文本文件格式的想法,那就太好了,因为它有一些不寻常的格式.另请注意,名称,地址和身份证之间的空格是实际空格而不是标签.
提前谢谢了!
问候,克里斯
我需要按字母顺序递归地从文件夹中获取所有文件夹和文件(先是文件夹,后是文件)
是否有一个已实现的 PHP 函数可以满足此需求?
我有这个功能:
function dir_tree($dir) {
$path = '';
$stack[] = $dir;
while ($stack) {
$thisdir = array_pop($stack);
if ($dircont = scandir($thisdir)) {
$i=0;
while (isset($dircont[$i])) {
if ($dircont[$i] !== '.' && $dircont[$i] !== '..' && $dircont[$i] !== '.svn') {
$current_file = "{$thisdir}/{$dircont[$i]}";
if (is_file($current_file)) {
$path[] = "{$thisdir}/{$dircont[$i]}";
} elseif (is_dir($current_file)) {
$path[] = "{$thisdir}/{$dircont[$i]}";
$stack[] = $current_file;
}
}
$i++;
}
}
}
return $path;
}
Run Code Online (Sandbox Code Playgroud)
我已经对数组进行了排序并像这样打印:
$filesArray = dir_tree("myDir");
natsort($filesArray);
foreach ($filesArray as $file) { …Run Code Online (Sandbox Code Playgroud) 我有这个数组从数据库中获取最后一个表.但是索引包含一个对象而不仅仅是一个字符串.
我需要从下面实现一些字符串操作才能获得部分table15
Array
(
[0] => stdClass Object
(
[table_name] => table15
[create_time] => 2009-11-24 13:10:04
)
)
Run Code Online (Sandbox Code Playgroud)
有什么建议?
编辑:
我正在使用ExtJs,我有点困惑.此数组是从以下PDO代码生成的:
$sql = "SELECT table_name, create_time FROM information_schema.TABLES WHERE table_schema = 'database_name' ORDER BY CREATE_TIME desc LIMIT 1";
$ostmt = $this->odb->query($sql);
return $ostmt->fetchAll(PDO::FETCH_OBJ);
Run Code Online (Sandbox Code Playgroud)
这将返回上面打印的数组.我不知道数组的名称,因为它是这样生成的......
还有其他想法吗?
非常感谢.