- 博客(0)
- 资源 (29)
- 收藏
- 关注
人人网高校信息库(json格式)
你在做项目的过程中,是否遇到过要全国所有高校的信息库,包括院系学院?你想想,全国这么多高校,一个一个去调查,岂不是累死了。我们观察其他网站,比如renren.com网,它的高校信息就比较齐全,查看了相关代码后,发现,renren.com将所有高校信息封装为了一个js的json格式的数据,所以非常方便我们直接拿过来用。我们既可以使用HttpClient来爬取这个js里的内容,通过jsoup等解析html,也可以使用正则表达式来获取json数据。非常方便,可以将获取的数据存入我们自己的数据库,构建我们自己的本地高校信息库,非常方便。
2012-05-04
maven archetype插件
用maven命令mvn archetype:generate创建工程的时候,如果遇到明明本地仓库repository已经有相关jar,却报archetype错误,无法创建工程,很有可能是maven的插件archetype有问题。请下载此资源,替换掉.m2下USER_HOME/.m2/repository/org/apache/maven这个目录,然后重新运行即可。
2012-04-20
scala-2.9.2.jar
// Contributed by Daniel Gronau
import scala.annotation._
trait Func[T] {
val zero: T
def inc(t: T): T
def dec(t: T): T
def in: T
def out(t: T): Unit
}
object ByteFunc extends Func[Byte] {
override val zero: Byte = 0
override def inc(t: Byte) = ((t + 1) & 0xFF).toByte
override def dec(t: Byte) = ((t - 1) & 0xFF).toByte
override def in: Byte = readByte
override def out(t: Byte) { print(t.toChar) }
}
case class Tape[T](left: List[T], cell: T, right: List[T])(implicit func: Func[T]) {
private def headOf(list:List[T]) = if (list.isEmpty) func.zero else list.head
private def tailOf(list:List[T]) = if (list.isEmpty) Nil else list.tail
def isZero = cell == func.zero
def execute(ch: Char) = (ch: @switch) match {
case '+' => copy(cell = func.inc(cell))
case '-' => copy(cell = func.dec(cell))
case '<' => Tape(tailOf(left), headOf(left), cell :: right)
case '>' => Tape(cell :: left, headOf(right), tailOf(right))
case '.' => func.out(cell); this
case ',' => copy(cell = func.in)
case '[' | ']' => this
case _ => error("Unexpected token: " + ch)
}
}
object Tape {
def empty[T](func: Func[T]) = Tape(Nil, func.zero, Nil)(func)
}
class Brainfuck[T](func:Func[T]) {
def execute(p: String) {
val prog = p.replaceAll("[^\\+\\-\\[\\]\\.\\,\\>\\<]", "")
@tailrec def braceMatcher(pos: Int, stack: List[Int], o2c: Map[Int, Int]): Map[Int,Int] =
if(pos == prog.length) o2c else (prog(pos): @switch) match {
case '[' => braceMatcher(pos + 1, pos :: stack, o2c)
case ']' => braceMatcher(pos + 1, stack.tail, o2c + (stack.head -> pos))
case _ => braceMatcher(pos + 1, stack, o2c)
}
val open2close = braceMatcher(0, Nil, Map())
val close2open = open2close.map(_.swap)
@tailrec def ex(pos:Int, tape:Tape[T]): Unit =
if(pos < prog.length) ex((prog(pos): @switch) match {
case '[' if tape.isZero => open2close(pos)
case ']' if ! tape.isZero => close2open(pos)
case _ => pos + 1
}, tape.execute(prog(pos)))
println("---running---")
ex(0, Tape.empty(func))
println("\n---done---")
}
}
/*
Run with:
val bf = new Brainfuck(ByteFunc)
bf.execute(""">+++++++++[<++++++++>-]<.>+++++++[<++
++>-]<+.+++++++..+++.[-]>++++++++[<++++>-]
<.#>+++++++++++[<+++++>-]<.>++++++++[<++
+>-]<.+++.------.--------.[-]>++++++++[<++++>
-]<+.[-]++++++++++.""")
*/
2012-04-17
Linux中数据库客户端(dbeaver)
Linux中的“万能”数据库客户端,支持各种常用数据库,如:oracle、mysql、ms-sqlserver、db2、sybase、postgresql等。
2011-11-23
db2jcc.jar db2jcc_license_cu.jar
db2jcc.jar,db2jcc_license_cu.jar
以上jar包由網絡收集而來,僅供學習之用,請不要用作商業用途。用于商業用途,請購買IBM db2資料庫。
2011-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人