问题列表 - 第33802页

如何检查当前路径中是否具有写入权限

在php中我如何确定是否可以在与尝试创建文件的脚本相同的路径中创建文件

php permissions

3
推荐指数
3
解决办法
6245
查看次数

用f#报废你的锅炉

我已经在Haskell编程语言中使用了Scrap Your Boilerplate和Uniplate库,我会发现通过有区别的联合的泛型编程形式非常有用.f#编程语言中是否有等效的库?

f# boilerplate generic-programming discriminated-union

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

关于指针的简单问题

有人能提醒我为什么会这样吗?

需要int*的函数可以作为输入(显然)

int *integer;
Run Code Online (Sandbox Code Playgroud)

但它也可以接受

&var->integer
Run Code Online (Sandbox Code Playgroud)

var为var_t*,其中var_t:

typedef struct {
    int integer;
} var_t;
Run Code Online (Sandbox Code Playgroud)

为什么第二次被接受?

编辑:oopsy,问题是相同的,但var实际上是var_t*(而不是var_t)更精确.

c

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

37
推荐指数
2
解决办法
5万
查看次数

Java动态代码生成,支持泛型

是否有任何工具可以提供Java动态代码生成并且还支持泛型?

例如,Javassist是我需要的工具,但它不支持泛型.

我写了一个使用Java 6 Compiler API的小型lib,但据我所知它依赖于JDK.有没有办法指定另一个编译器?或者只向我的应用程序提供我需要使用Java Compiler API调用的部分?

java java-api dynamic-code java-compiler-api

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

FileWriter中的换行符

如何在FileWriter中生成新行?似乎"\n"不起作用.

log = new FileWriter("c:\\" + s.getInetAddress().getHostAddress() + ".txt", true);    
log.append("\n" + Long.toString(fileTransferTime));
log.close();
Run Code Online (Sandbox Code Playgroud)

上面代码的文件输出只是一长串数字而没有新行.

java

5
推荐指数
1
解决办法
3万
查看次数

记录到文件或事件查看器?

我想知道记录信息消息的"正确"方法是什么; 到文件,或在事件查看器中的特殊日志?

我喜欢记录到文件,因为我可以使用滚动平面文件监听器并查看每天的新记录,而且在事件查看器中我一次只能看到一条消息 - 在文件中我可以很容易地扫描一天.我的同事争辩说,文件占用空间,他喜欢在一个地方发出警告,错误和信息消息.你怎么看?有首选方式吗?如果是这样,为什么?

此外,任何方法中是否存在并发问题?我已经读过entlib是线程安全的,如果监听器不是线程安全的话,会生成一个Monitor.Enter,但我想确定(我们只是使用Logger.Write).我们正在使用entlib 3.1.

先感谢您.

.net c# logging enterprise-library thread-safety

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

如何检测GDB当前进程是否正在运行?

标准方式如下:

if (ptrace(PTRACE_TRACEME, 0, NULL, 0) == -1)
  printf("traced!\n");
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果跟踪当前进程(即使用gdb运行或附加到它),ptrace将返回错误.

但是这有一个严重的问题:如果调用成功返回,gdb可能以后不会附加到它.这是一个问题,因为我没有尝试实现反调试的东西.我的目的是在满足转义时发出'int 3'(即断言失败)并且gdb正在运行(否则我得到一个停止应用程序的SIGTRAP).

每次禁用SIGTRAP并发出'int 3'都不是一个很好的解决方案,因为我正在测试的应用程序可能正在使用SIGTRAP用于其他目的(在这种情况下我还是搞砸了,所以它没关系,但它是事情的原理:))

谢谢

c linux gdb posix

57
推荐指数
7
解决办法
2万
查看次数

sqlalchemy数据库表已被锁定

我试图从sqlalchemy的sqlite db中选择所有记录,遍历每个记录并对其进行更新.我这样做是因为我需要在我的名字栏中重新格式化记录.

这是我用来做一个简单测试的代码:

   def loadDb(name):    

        sqlite3.connect(name)    
        engine = create_engine('sqlite:///'+dbPath(), echo=False)      
        metadata = MetaData(bind=engine)

        return metadata

    db = database("dealers.db")
    metadata = db.loadDb()
    dealers = Table('dealers', metadata, autoload=True)

    dealer = dealers.select().order_by(asc(dealers.c.id)).execute()

    for d in dealer:
        u = dealers.update(dealers.c.id==d.id)
        u.execute(name="hi")

        break
Run Code Online (Sandbox Code Playgroud)

我收到错误:

sqlalchemy.exc.OperationalError: (OperationalError) database table is locked u'UPDATE dealers SET name=? WHERE dealers.id = ?' ('hi', 1)
Run Code Online (Sandbox Code Playgroud)

我很新的SQLAlchemy的,我不知道这是什么错误意味着或如何解决它.这似乎应该是一个非常简单的任务,所以我知道我做错了什么.

python sqlite sqlalchemy

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

我在xpath上做错了什么?

的test.html

<html>
    <body>
        <span> hello Joe</span>
        <span> hello Bob</span>
        <span> hello Gundam</span>
        <span> hello Corn</span>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

PHP文件

$doc = new DOMDocument();
$doc->loadHTMLFile("test.html");

$xpath = new DOMXPath($doc);

$retrieve_data = $xpath->evaluate("//span");

echo $retrieve_data->item(1);
var_dump($retrieve_data->item(1));
var_dump($retrieve_data);
Run Code Online (Sandbox Code Playgroud)

我试图使用XPath找到跨度,然后呼应它,但似乎我不能呼应它.我尝试转储它以查看是否正确评估,我不确定此输出是什么意思:

object(DOMElement)#4 (0) { } 
object(DOMNodeList)#7 (0) { }
Run Code Online (Sandbox Code Playgroud)

什么是#4#7意思又是什么括号的意思; 语法是什么意思?

更新:这是我的错误,当我尝试echo $retrieve_data;$retrieve_data->item(1);

Catchable fatal error: Object of class DOMNodeList could not be converted to string
Run Code Online (Sandbox Code Playgroud)

php xpath

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