如何列出特定IP地址下的所有可用共享文件夹?
模拟代码:
IP ip = new IP("10.0.0.9");
for(File share : ip.getSharedFolders){
System.out.println(share.getName());
}
Run Code Online (Sandbox Code Playgroud)
有没有办法可以实现这一目标?
我想制作类似于Windows网络浏览器的东西,我需要获取特定IP下的所有共享文件夹,以便我可以生成一棵树.

使用第一级共享文件夹,我可以轻松地获得这样的较低级别
for(File f : new File("//10.0.0.9/d").listFiles()){
System.out.println(f.getName());
Run Code Online (Sandbox Code Playgroud) 我希望对此声明之间的差异进行解释:
class Clazz(param1: String, param2: Integer)
Run Code Online (Sandbox Code Playgroud)
还有这个:
class Clazz(param1: String)(param2: Integer)
Run Code Online (Sandbox Code Playgroud)
第二个声明是否只影响实例化对象的方式,还是有更深层次的原因我不知道.
我想到的一个原因是多个可变长度的参数,例如:
class Clazz(param1: String*)(param2: Integer*)
Run Code Online (Sandbox Code Playgroud)
还有其他人吗?
引用其中一条关于ngCloak指令的评论(AngularJS文档):
它只在你的"index.html"页面上真正需要,因为浏览器可能会在Angular有机会解析/编译之前尝试渲染.在运行时,当Angular由于ng-view,ng-include等引入内容时,它将在浏览器呈现之前由Angular处理.
我在jsFiddle中创建了一个示例来验证这一点,令我惊讶的是,表达式在浏览器中呈现之前未进行评估.我希望模板首先被编译和链接,然后附加到DOM - 事实并非如此.
这是否意味着每个{{expression}}内部模板也应该被包裹ngCloak以防止闪烁或者我错过了什么?
如果我在Scala REPL中评估以下表达式:
scala> "1" + 1
res0: java.lang.String = 11
Run Code Online (Sandbox Code Playgroud)
返回的类型是:java.lang.String.
如果我评估这个相似的表达式:
scala> 1 + "1"
res1: String = 11
Run Code Online (Sandbox Code Playgroud)
返回的类型是:String.
为什么不同?
考虑这样的解析器示例:
object TestParser extends RegexParsers {
override protected val whiteSpace = """[ \t]*""".r
def eol = """(\r?\n)+""".r
def item = "[a-zA-Z][a-zA-Z0-9-]*".r
def list = "items:" ~> rep1sep(item,",")
def constraints = "exclude:" ~> item
def itemsDefinition = (rep1sep(list, eol) ~ repsep(constraints,eol))
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试解析此输入(没有两行包含排除工作正常):
items: item1, item2, item3, item3, item4
items: item2, item3, item3, item5, item4
items: item4, item5, item6, item10
items: item1, item2, item3
exclude: item1
exclude: item2
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
[5.5] failure: `items:' expected but `e' found
exclude: item1
^
Run Code Online (Sandbox Code Playgroud)
问题很明显这一行:
def …Run Code Online (Sandbox Code Playgroud) 考虑一下我们有:
abstract class FlyingObject;
case class Rocket(name: String) extends FlyingObject;
Run Code Online (Sandbox Code Playgroud)
这两个函数声明之间有什么区别:
def launch[T <: FlyingObject](fo: T)
Run Code Online (Sandbox Code Playgroud)
和
def launch(fo: FlyingObject)
Run Code Online (Sandbox Code Playgroud)
如果使用哪种类型的声明,那将是一些很好的例子......
[UPDATE]
在那里可以找到另一个很好的例子和解释.这是你应该使用上限而不仅仅是派生类作为参数的另一个例子.
我遇到了一个非常奇怪的问题,浏览器的HTTP请求似乎被Restlet服务器使用的Simple连接器丢弃.
服务器设置:
服务器正在为浏览器提供网页,并使用javascript的XMLHttpRequest来获取更新.但是,其中一些XMLHttpRequests并未完成.Chrome的javascript调试程序显示这些的"失败"状态; Firefox的调试器记录完成时间,没有HTTP状态代码和记录的响应.数据包嗅探器指示有问题的请求实际发送到服务器,但服务器从不响应.调试显示这些请求永远不会到达我们的服务器代码.
我已经验证了Firefox,Chrome以及IE的问题.所有三个浏览器(最新版本)都遇到了这个问题.而且,每个浏览器都重复且可重复地具有完全相同请求的问题.但是这组请求在三种浏览器之间有所不同.
真正奇怪的是,当使用服务器的机器名称(测试在LAN上运行)时,问题确实浮出水面,但在使用机器的IP地址时却没有.从摘要切换回基本身份验证也会使问题消失,就像用Jetty替换Simple连接器一样.
我现在倾向于转向Jetty,但我仍然想知道发生了什么.有没有人见过这样的行为,或者对这里出了什么问题有所了解?
我试图使用Jasmine测试角度指令.我使用NPM 安装了karma-ng-html2js-preprocessor.然后我使用Bower使用jQuery,但是我收到了这个错误
Connected on socket ndfTI8XJInIU5YJCAAAA with id 49983199
Chrome 47.0.2526 (Mac OS X 10.10.2) http controller test it should be one FAILED
Error: [$injector:modulerr] Failed to instantiate module templates due to:
Error: [$injector:nomod] Module 'templates' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.4.8/$injector/nomod?p0=templates
at /Users/naveenkumar/Documents/ionic_work/tes/bower_components/angular/angular.js:68:12
at /Users/naveenkumar/Documents/ionic_work/tes/bower_components/angular/angular.js:2005:17
at ensure (/Users/naveenkumar/Documents/ionic_work/tes/bower_components/angular/angular.js:1929:38)
at module (/Users/naveenkumar/Documents/ionic_work/tes/bower_components/angular/angular.js:2003:14)
at /Users/naveenkumar/Documents/ionic_work/tes/bower_components/angular/a
Run Code Online (Sandbox Code Playgroud)
我做了这样的指示 …
jasmine angularjs angularjs-directive angularjs-scope karma-jasmine
从Scala中的编程 6.10(页151):
用户程序中的标识符不应包含'$'字符,即使它会编译; 如果他们这样做可能会导致与Scala编译器生成的标识符的名称冲突.
我确信这是一个原因,但为什么不阻止在字母数字标识符中使用'$'字符呢?
我想做的是简化这个表达式
选项(选择(ExpList(列表)(选择(选择(Var("可选"))))))))
得到这样的东西
选项(ExpList(列表(选项(Var("可选")))))
匹配表达式的内容看起来像是为了简化列表中的所有表达式.
这些任务的最佳实践是什么?
我试过的代码片段是这样的:
object CaseClassPatternMatching extends App {
abstract class Expr
case class Var(name: String) extends Expr
case class Opt(expr: Expr) extends Expr
case class ExpList(listExp: List[Expr]) extends Expr
def joinOpt(feature: Expr): Expr = feature match {
case Opt(Opt(f)) => joinOpt(Opt(f)) // Opt(Opt("test")) --> Opt("test")
// case ExpList(list) => ???? // What to do there?
case _ => feature
}
val expr1: Expr = joinOpt(Opt(Opt(Opt(Var("optional")))))
println(Opt(Var("optional")))
// Output: Opt(Var(optional)) --> …Run Code Online (Sandbox Code Playgroud) scala ×6
java ×3
angularjs ×2
parameters ×2
constructor ×1
expression ×1
filesystems ×1
jasmine ×1
javascript ×1
networking ×1
restlet ×1
samba ×1
types ×1
windows ×1