小编Kir*_*oll的帖子

在bash中将一个字符串切成几行

我想采取本地目录的路径,并将路径上的每个目录放在不同的行中.我试过用cut剪切:

pwd | cut -f 1- -d\/ --output-delimiter=\n

但它并没有将'/'改为EOL,而是将n改为.我究竟做错了什么?

bash cut

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

Emacs:帮助我理解文件/缓冲区管理

我过去三年一直在使用emacs来满足我的所有文本编辑需求.当我在一个文件中,处理代码或诸如此类的东西时,我效率很高.有两个文件,我可以在它们之间"Cx b RET",我做得很好.但是,每当我需要一次处理两个以上的文件时,我往往会迷路.

以下是我想要解决的一些问题:

  1. 我忘记了我的一些缓冲区被调用,但我不明白为什么Cx Cb将我的窗口分成两个缓冲区并退出迷你缓冲区.当然我可以切换缓冲区并选择一个缓冲区来访问,但这感觉不直观,让我打开两个缓冲区.

  2. 当我访问目录而不是文件时,我有一个方便的所有文件和目录列表.我通常希望用以下两种方法之一做:1)打开一个文件,再也不会看到这个缓冲区或2)打开一堆文件,再也不会看到这个缓冲区了.我真的不知道如何做到这一点,因为将点移动到文件并点击返回不会做这些事情.

  3. 我知道我的缓冲区不像标签,但我倾向于想要滚动它们以找到我想要的东西.我不知道有任何关键绑定,但我希望它是Mn/Mp等.然后,这可能是一种非常低效的切换缓冲区的方法.

  4. 当我打开任何类型的交互式帮助时(例如在ESS中),我习惯切换回我正在使用的缓冲区并使用Cx 1返回单个缓冲区.但是,当我这样做时,帮助缓冲区在我的缓冲区列表中挂起,这让我更加困惑.我知道我可以切换到那个缓冲区,杀死它,切换回来,然后回到单个缓冲区,但这似乎是错误的.

到目前为止我处理这个问题的方法涉及在不同的工作空间中使用平铺窗口管理器和几个emacs窗口,而不是实际学习管理emacs中的大量文件的最佳方法.我不一定想改变emacs以更好地满足我的需求(尽管如果它符合我要说的话我会对此持开放态度),相反,我想在处理文件后面思考一下思维过程/缓冲emacs的工作方式,以及如何提高它的效率.

任何能够帮助我理解正确方法的答案,或管理我的缓冲区或文件的更有效方法都将非常感激.

emacs

30
推荐指数
2
解决办法
5757
查看次数

什么是反击?`叫?

在评估其内容的上下文中调用了什么反引号运算符(``)?

php bash perl operators nomenclature

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

如何在长度超过32位的变量的javascript中进行按位和?

我在javascript中有2个数字,我想要和.它们都是33位长

在C#中:

 ((4294967296 & 4294967296 )==0) is false
Run Code Online (Sandbox Code Playgroud)

但在javascript中:

 ((4294967296 & 4294967296 )==0) is true
Run Code Online (Sandbox Code Playgroud)

4294967296是((长)1)<< 32

据我了解,这是因为javascript在执行按位操作时将值转换为int32.

我该如何解决这个问题?有关如何替换位和一组其他数学运算以使位不丢失的任何建议?

javascript 64-bit bit-manipulation

23
推荐指数
2
解决办法
5658
查看次数

是否有可能在Mono 2.10下运行ASP.NET MVC 3项目?

Mono 2.10的发行说明建议使用XSP支持ASP.NET MVC 3.0和Razor.

在MonoDevelop 2.4.2(Mac OS X)中打开新创建的ASP.NET MVC 3.0默认项目(使用Visual Studio 2010创建)时,缺少以下DLL:

System.Web.Entity
System.Web.Helpers
System.Web.Mvc
System.Web.WebPages
Run Code Online (Sandbox Code Playgroud)

所有这些我都替换为从我的Windows安装中获得的DLL.项目构建,但在尝试调试项目时收到以下错误消息:

Adding applications '/:.'...
Registering application:
    Host:          any
    Port:          any
    Virtual path:  /
    Physical path: /.../Mvc3Test/
Handling exception type TargetInvocationException
Message is Exception has been thrown by the target of an invocation.
IsTerminating is set to True
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
Run Code Online (Sandbox Code Playgroud)

在进行这些替换之前,应用程序运行但显然缺少参考错误.这表明新DLL中的某些东西搞砸了XSP服务器.

我究竟做错了什么?我太简单了吗?我是Mono和MonoDevelop的新手,但我能够成功地使用当前安装的MonoDevelop创建,构建和调试MVC 2.0项目.

mono xsp monodevelop asp.net-mvc-3

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

如何使用两种不同的泛型类型创建扩展Iterable的Java接口?

理想情况下,它看起来像这样(上下文无关紧要):

public interface myInterface extends Iterable<Point>, Iterable<Segment> { ... }
Run Code Online (Sandbox Code Playgroud)

但这在Java中是不允许的.我怎样才能实现这种行为?

java generics interface

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

NULL参数是不好的做法吗?

将NULL参数传递给方法是不好的做法,换句话说,我们应该有允许NULL参数作为有效参数的方法定义.

假设我想要两个方法1.检索所有公司的列表2.根据过滤器检索公司列表.

我们可以有两种方法,如下所示

    List<Company> getAllCompaniesList();
    List<Company> getCompaniesList(Company companyFilter);
Run Code Online (Sandbox Code Playgroud)

或者我们可以有一种方法

    List<Company> getCompaniesList(Company companyFilter);
Run Code Online (Sandbox Code Playgroud)

在第二种情况下,如果参数为NULL,则方法返回所有公司的列表.

除了良好实践的问题,实际上我还会看到后面的方法中的另一个问题,下面将对此进行解释.

我正在实现Spring AOP,其中我想对像1这样的参数进行一些检查.参数是否为NULL?2.是0的大小?

在某些情况下,我们不能像方法那样拥有null参数

    void addBranches(int companyId, List<Branch>);
Run Code Online (Sandbox Code Playgroud)

通过定义如下方法,使用Spring AOP可以很好地执行此检查

@Before(argNames="args", value="execution(* *)")
void beforeCall(JoinPoint joinPoint ,Object[] args )
{ 
           foreach(Object obj in args)
           {
                 if(obj == NULL)
                 {
                     throw new Exception("Argument NULL");
                 } 
           }   
}
Run Code Online (Sandbox Code Playgroud)

但我面临的问题是因为我已经定义了一些方法,这些方法应该接受一个方法的多个功能的NULL参数,如上面提到的方法List getCompaniesList(Company companyFilter); 所以我不能对所有方法统一应用AOP,并且方法名称匹配的某些表达式在这里都不会有用.

如果需要更多信息或问题描述不够,请告诉我.

感谢您阅读我的问题并思考它.

java methods null arguments exception

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

物业支持价值范围

有可能这样吗?我假设没有,但它对我来说很好看:

class MyClass {
    public int Foo {
        get { return m_foo; }
        set {
            // Bounds checking, or other things that prevent the use
            // of an auto-implemented property
            m_foo = value;
        }

        // Put the backing field actually *in* the scope of the property
        // so that the rest of the class cannot access it.
        private int m_foo;
    }

    void Method() {
        m_foo = 42;    // Can't touch this!
    }
}
Run Code Online (Sandbox Code Playgroud)

当然我知道这个语法不正确,这不会编译.为了清楚地描绘我的想法,这是假设的未来C#.我为这个有点假设的问题道歉,但它对于Programmers.SE来说太具体了.

这样的东西可以在编译器中实现,它可以用于一个目的:只允许属性getset …

c# properties

18
推荐指数
2
解决办法
1612
查看次数

C#语法通过数组中的构造函数params初始化自定义类/对象?

我有一个至少有4个变量的类,我已经为类创建了一个构造函数,以便我可以使用它进行初始化

MyClass testobj = new MyClass(1234,56789,"test text", "something else", "foo");
Run Code Online (Sandbox Code Playgroud)

工作良好.

然后我有一个这样的数组,我需要在循环中解析,所以我想得到一些静态数据到这个数组.

我的方法是:

MyClass[] testobjlist = new MyClass 
{
     new MyClass(1001,1234,"Text 1", "abcdefghijklm", "ding"),
     new MyClass(1002,2345,"Text xx", "bla bla", "dong"),
     new MyClass(1003,8653,"Text yy", "blah blah even more", "bamm!")
}
Run Code Online (Sandbox Code Playgroud)

但不知怎的,这给了我一个奇怪的错误,我需要额外的} ???

我不知道我是否应该提到这一点,但是我将它用于使用Razor-engine 2的网页.但我认为这是一个普通的C#问题?

我的解决方法是使用一个大小初始化数组,然后通过索引逐个添加元素,但我宁愿优先使用上面的解决方案,因为我可能需要在测试时按顺序上下移动项目,我有很多真实数据中超过3个.

想知道我在上面的代码中缺少什么......?

c# arrays constructor initialization razor-2

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

检测ASP.NET MVC中的异步客户端断开连接

给定一个异步控制器:

public class MyController : AsyncController 
{
    [NoAsyncTimeout]
    public void MyActionAsync() { ... }

    public void MyActionCompleted() { ... }
}
Run Code Online (Sandbox Code Playgroud)

假设MyActionAsync开始一个需要几分钟的过程.如果用户现在进入MyAction操作,浏览器将等待连接打开.如果用户关闭其浏览器,则关闭连接.是否有可能检测到服务器上何时发生这种情况(最好是在控制器内)?如果是这样,怎么样?我尝试过压倒,OnException但在这种情况下永远不会发生.

注意: 我非常感谢下面的有用答案,但这个问题的关键方面是我正在使用AsyncController.这意味着HTTP请求仍然是打开的(它们像COMET或BOSH一样长寿),这意味着它是一个实时套接字连接.为什么在此实时连接终止时(即"通过对等方重置连接",TCP RST数据包)不能通知服务器?

c# asp.net-mvc asynchronous

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