问题列表 - 第9900页

我应该为文件名转义/清理哪些字符?

我需要清理一些将在文件名中使用的数据.某些数据包含空格和符号字符.是否有一个函数可以转义或清理适合在文件名(或路径)中使用的数据?我在PHP手册的"文件系统功能"部分找不到一个.

所以,假设我必须编写自己的函数,我需要逃避(或更改)哪些字符?

php

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

在Java中的OutputStream上切换写入器

我有一个方法打开一个文件并传递给另一个函数来写一些数据.第二种方法想要使用PrintWriter来写入其数据.但是,我不想要求每个人都使用PrintWriter写入该流.

目前它看起来像这样(消毒的例子......不要批评我选择的方法或变量名称)

public void exportRawDataIntoStream(OutputStream os) {
    PrintWriter pr = new PrintWriter(os);
    printFirstData(pr);
    printSecondData(pr);
}

public void exportToFile(File file) {
    OutputStream os = null;
    try {
        os = new BufferedOutputStream(new FileOutputStream(file));
        exportRawDataIntoStream(os);
                doMoreWithTimeFile(os);
    } finally {
        if (os != null) {
            try {
                os.close();
            } catch (Exception e ) {
                e.printStackTrace();
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

除非我在exportRawDataIntoStream的末尾加上'pr.flush',否则这不起作用.我无法关闭PrintWriter,因为它会关闭整个流.

冲洗是否合法可靠?我是否应该使用其他方法将Writers混合在同一个流上,或者我绝对不应该这样做?

java file-io outputstream

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

将C#程序移动到另一种语言

我目前负责开发在Microsoft .NET C#中创建的第二个程序版本.我没有做任何实际的编程,但我正在为程序员编写规范.我想把它从.NET代码库中删除,但由于Joel在他的博客上说永远不会重写代码,并且他确实提供了很好的推理,我倾向于仔细思考.

所以我的问题是,

(1)有没有简单的过渡方式?(像.NET C#这样的语言)
(2)你会把它从.NET中删除吗?
(3)如果是这样,你会用什么语言?

我想脱离.NET的原因是我对.NET的理解,它必须安装在客户端上.当有更好的方法时,我宁愿不给我的顾客带来不便.

.net c# language-comparisons

4
推荐指数
4
解决办法
770
查看次数

Maven Exec插件没有读取配置

我正在尝试使用Maven exec:exec目标执行我的项目,我尝试使用此代码段配置它:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1.1</version>
    <configuration>
        <executable>java</executable>
        <arguments>
            <argument>-jar ${staging.dir}/project.jar</argument>
        </arguments>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>exec</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

当我运行时,mvn exec:exec我得到输出:

------------------------------------------------------------------------
[ERROR]BUILD ERROR
------------------------------------------------------------------------
One or more required plugin parameters are invalid/missing for 'exec:exec'

[0] Inside the definition for plugin 'exec-maven-plugin' specify the following:

<configuration>
  ...
  <executable>VALUE</executable>
</configuration>

-OR-

on the command line, specify: '-Dexec.executable=VALUE'
Run Code Online (Sandbox Code Playgroud)

我已经尝试过重新组织<plugin>我能想到的每一个但没有任何区别的东西?该项目是一个POM而不是一个罐子.

有任何想法吗?

maven-2 maven-plugin

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

为什么这个C++ 0x代码不会调用移动构造函数?

出于某种原因,以下代码从不调用 Event::Event(Event&& e)

Event a;
Event b;
Event temp;
temp = move(a);
a = move(b);
b = move(temp);
Run Code Online (Sandbox Code Playgroud)

为什么不?

使用std::swap一次调用.

class Event {
public:
    Event(): myTime(0.0), myNode(NULL) {}
    Event(fpreal t, Node* n);
    Event(Event&& other);
    Event(Event const& other) = delete;
    ~Event();

    bool                operator<(Event const& other) const { return myTime < other.myTime; }
    bool                operator>(Event const& other) const { return myTime > other.myTime; }
    fpreal              getTime() const { return myTime; }
    void                setTime(fpreal time) { myTime = time; }
    Node* …
Run Code Online (Sandbox Code Playgroud)

c++ c++11

4
推荐指数
2
解决办法
2231
查看次数

Java中的String.contains

String s1 = "The quick brown fox jumps over the lazy dog";
String s2 = "";
boolean b = s1.contains(s2);
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)

我运行上面的Java代码,b返回t​​rue.由于s2为空,为什么s1包含s2?

我检查了Java API,它写道:

当且仅当此字符串包含指定的char值序列时,才返回true.

参数:

s - 要搜索的序列

返回:

如果此字符串包含s则返回true,否则返回false

java string

26
推荐指数
2
解决办法
11万
查看次数

在Notepad ++中使用JSLint

我已经看到其他文本编辑器使用扩展来允许语法检查器,如JSLint,这是否可以使用Notepad ++?

javascript lint jslint notepad++

31
推荐指数
2
解决办法
3万
查看次数

将单元测试添加到现有的asp.net Web表单应用程序

我有一个现有的asp.net webforms应用程序,我想添加一些单元测试,但我不确定如何去做.

该应用程序是数据库驱动的功能,我想你可以与高级论坛进行比较.逻辑,数据访问和演示在很大程度上是分开的.

我应该测试哪些方法?

如何处理数据库和测试数据?

是否有任何工具可以帮助解决这个问题?

asp.net unit-testing webforms

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

PHP - 如果变量包含"wikipedia.org",则跳过strtolower()的函数

我的网站允许用户将URL输入数据库.我使用的代码是"$ site = strtolower($ site);" 使所有这些URL小写.

但是,我刚刚意识到维基百科URL是区分大小写的,所以我想避免使用"$ site = strtolower($ site);" 在Wikipedia网址上,所有网址都包含"wikipedia.org".

我怎么能编写一个跳过"$ site = strtolower($ site);"步骤的函数 如果$ site包含"wikipedia.org"?

提前致谢,

约翰

php string

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

摆脱SQL Server中的"魔术"数字

在代码中,可以指定一次全局可访问的常量/枚举/等,然后可以在整个应用程序中重用它们.这使得能够使用像'Mazda'这样有意义的名称而不是像'2'这样的数字.

我们希望在SQL Server存储过程中也这样做,但不确定实现它的最佳方法.

例如,对于下表(众所周知的汽车模式):

Car       ManufacturerId 
350Z       1
Hilux      2
Yaris      2

ManufacturerId   Name
1                Nissan
2                Toyota
Run Code Online (Sandbox Code Playgroud)

所以不要写作

SELECT * FROM Car WHERE ManufacturerId = 1 -- Nissan
Run Code Online (Sandbox Code Playgroud)

我们想写类似的东西

SELECT * FROM Car WHERE ManufacturerId = @Nissan
Run Code Online (Sandbox Code Playgroud)

我们的一个限制是我们不能依赖于Manufacturer.Name在App的生命周期中保持不变.我们确实考虑过一个永远不会改变的"Code"列,并且这样的联接被查找:

SELECT * 
FROM Car c 
    INNER JOIN Manufacturer m ON c.ManufacturerId = m.ManufacturerId
WHERE m.Code = 'Nissan'
Run Code Online (Sandbox Code Playgroud)

我对此有点犹豫,因为它使用额外的连接和字符串比较,可以拼写错误.

无需在每个存储过程中声明变量,最好的方法是什么?

sql sql-server

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