小编Gau*_*ave的帖子

从RandomAccessFile读取数据产生不正确的结果 - Java

我有一个42行的文本文件.每行包含超过22,000个以逗号分隔的数字.

我想从每一行中提取某些数字,并且我有一个长度为1000的int数组,其中包含从这42行中的每一行中需要的1,000个数字.

例如,如果数组包含43,1,3244,则意味着我需要从第一行到第42行开始的第43个数字,第1个数字和第3244个数字.

我的for循环似乎不起作用,它只读取文本文件中第一行有42行220000个数字,我不知道它出错了.

for(int i=0;i<42;i++){ //irretates through the 42 lines of 
    counter=1; // to keep track about on which line the code is working
    System.out.println("Starting line"+i);

    st2=new StringTokenizer(raf1.readLine(),",");
    //raf3 is a RandomAccessFile object containing the 42 lines

    a:while(st2.hasMoreTokens()){
        b=is_there(array2,counter);
        // is_there is a method that compares the rank of the taken being read with 
       //the whole array that has the 1000 numbers that i want. 
        if(b==false){ 
            // if the rank or order of token [e.g. 1st, 432th] we are …
Run Code Online (Sandbox Code Playgroud)

java for-loop stringtokenizer randomaccessfile

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

SQL注入问题

假设Web服务器使用以下PHP代码来处理登录请求:

$username = $_POST[user];
$password = $_POST[pass];
$sql = "SELECT * FROM users WHERE name = '$username' AND password = '$password'";
if(mysql_num_rows($rs) > 0){ //do something
}
Run Code Online (Sandbox Code Playgroud)
  1. 用户名的值将始终导致成功登录?

我认为该值' OR 1=1将始终导致成功登录,因为查询将是:

"SELECT * FROM users WHERE name = '' OR 1=1 AND password = '$password'"
Run Code Online (Sandbox Code Playgroud)

它是否正确?

  1. 假设数据设置为使用GBK中文unicode字符集.在GBK中,字节0x5c编码\0x27编码'.字节0xbf27表示两个字符¿',字节0xbf5c是单个中文字符.如果用户名和密码字段添加斜线',",\,和null,什么用户名总是会导致一个成功登录,假设数据库解释字符串作为GBK但添加斜线处理字符串作为ASCII?

我不确定句子的最后部分是什么意思(通过解释为GBK但处理为ASCII).有人能说清楚如何解决这个问题吗?

php sql sql-injection

7
推荐指数
0
解决办法
384
查看次数

如何在android国际象棋应用程序中处理拖动?

我刚开始开发Android应用程序(使用java,在Android工作室,如果这很重要),我正在做一个小项目,只是为了好玩.我想创建自己的国际象棋应用程序,到目前为止我做了很多事情.我设置了一个菜单切换到另一个活动,这是游戏本身,我用自绘板制作了一个自定义视图,我认为我的模型也差不多完整了.我唯一不明白的是如何处理阻力.因此,当您使用拖动手势将一个部件从一个位置移动到另一个位置时,您如何获得该部分的起点和终点?

如上所述,我已经在我的模型中实现了一个移动(带有一个函数移动(位置开始,位置结束)),它还检查该移动是否对某个部分有效,但我唯一需要的是让它我在实际的板上拖了一块.

我正在考虑在我的Controller类中放置一个onDrag方法,但我不知道如何解决这个问题,并且无法在互联网上找到好的例子.我已经开始了,但不知道它是否可行.

你能帮我实现拖拽吗?

提前致谢!

PS我还将在我的问题中添加自定义视图和(尚未完成)控制器的代码,如果这有帮助的话.如果您需要更多我的代码来回答这个问题,我也会把它放在这里,让我知道.

public class ChessView extends View implements Observer {
    private Game game;
    private static final Paint WHITE_PAINT = new Paint(), BLACK_PAINT = new Paint();

    public ChessView(Context context) {
        super(context);
        init();
    }

    public ChessView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public ChessView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init();
    }

    public void init() {
        WHITE_PAINT.setColor(Color.rgb(200, 159, 77));
        BLACK_PAINT.setColor(Color.rgb(61, 34, 18));
    }

    public void setGame(Game game) {
        if (this.game != null)
            this.game.deleteObserver(this); …
Run Code Online (Sandbox Code Playgroud)

java android chess android-studio

7
推荐指数
1
解决办法
595
查看次数

通过html按钮更改变量

我正在学习JavaScript,因此决定创建简单的Rock,Paper和Scissors游戏。我想通过按钮来控制它。所以我用html制作了这个:

<div id="game">
    <button onClick="user(rock)">Rock</button>
    <button onClick="user(paper)">Paper</button>
    <button onClick="user(scissors)">Scissors</button>
    <div id="result"></div>
    <br>
    <br>
    <button onClick="test()">DEBUG</button>
</div>
Run Code Online (Sandbox Code Playgroud)

并在.js文件中

var user = "none";
function user(choice){
    var user = choice;
}

function test(click){
    alert("You chose " + user);
}
Run Code Online (Sandbox Code Playgroud)

因此,我认为单击“ Rock”按钮后,它将把var user更改为rock,但是没有。单击岩石,然后单击“调试”按钮后,出现“您没有选择”的信息。

html javascript var

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

Hadoop -getmerge如何工作?

在hadoop getmerge描述中

用法:hdfs dfs -getmerge src localdst [addnl]

我的问题是为什么getmerge连接到本地目的地为什么不是hdfs本身?问这个问题是因为我有以下问题

  1. 如果要合并的文件大于本地大小怎么办?
  2. 将hadoop -getmerge命令限制为仅连接到本地目的地是否有任何特定原因?

hadoop hdfs hadoop-yarn hadoop2

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

无法添加gem来源

我正在尝试在我的源代码中添加http://rubygems.org/因为我无法使用'gem install NAME'(此错误:无法在任何存储库中找到有效的宝石'破折号'(> = 0) .

所以,我做了这个命令:gem sources -a http://rubygems.org/

结果:错误:执行gem时...(Gem :: OperationNotSupportedError)未连接到tty且未指定默认值

我给你的ENV:

    $ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 2.4.5.1
  - RUBY VERSION: 2.2.4 (2015-12-16 patchlevel 230) [i386-mingw32]
  - INSTALLATION DIRECTORY: C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0
  - RUBY EXECUTABLE: C:/RailsInstaller/Ruby2.2.0/bin/ruby.exe
  - EXECUTABLE DIRECTORY: C:/RailsInstaller/Ruby2.2.0/bin
  - SPEC CACHE DIRECTORY: C:/Users/mramart/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: C:/ProgramData
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mingw32
  - GEM PATHS:
     - C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0
     - C:/Users/mramart/.gem/ruby/2.2.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true …
Run Code Online (Sandbox Code Playgroud)

ruby rubygems

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

jenssegers / laravel-mongodb正则表达式在哪里不起作用

我正在使用jenssegers / laravel-mongodb与MongoDB数据库一起使用Laravel API 。

我正在尝试使用正则表达式进行过滤以获取一些特定数据。在该插件的教程中,我发现了这一点:

User::where('name', 'regex', new MongoRegex("/.*doe/i"))->get();
Run Code Online (Sandbox Code Playgroud)

所以我的代码看起来像这样:

School::where('name', 'regex', new MongoRegex("/haags/i"))->get();
Run Code Online (Sandbox Code Playgroud)

但是结果是空的。当我输出查询时,它看起来像这样:

db.schools.find({"name":{"$regex":{"regex":"haags","flags":"i"}}})
Run Code Online (Sandbox Code Playgroud)

当我在控制台中使用该查询时,它说:

error: {
    "$err" : "Can't canonicalize query: BadValue $regex has to be a string",
    "code" : 17287
}
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

School::where('name', 'regexp', "/haags/i")->get();
Run Code Online (Sandbox Code Playgroud)

但这给了我这个查询:

db.schools.find({"name":{"$regex":"\/haag\/i"}})
Run Code Online (Sandbox Code Playgroud)

这显然转义了正斜线并使正则表达式无效。除此之外,正则表达式不应该在引号之间,或者应该是这样(在M​​ongoDB手册中找到):

db.products.find( { description: { $regex: /^S/, $options: 'm' } } )
Run Code Online (Sandbox Code Playgroud)

因此,转换为MongoDB查询时出现问题,或者我做错了事。有人可以告诉我这是什么吗?

php regex mongodb laravel-4 jenssegers-mongodb

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

Rails 4错误:ActionController :: ParameterMissing在UsersController#update中,param not found:user

我有一个标准CRUD方法的用户控制器.其中一种方法是更新.

def update
    if @user.update(user_params)
        redirect_to @user, notice: "Account Successfully updated"
    else
        render :edit
    end
end
Run Code Online (Sandbox Code Playgroud)

然后我有轨道4强params方法:

private
def user_params
    params.require(:user).permit(:name, :email, :password, :password_confirmation, :role_ids => [])
end
Run Code Online (Sandbox Code Playgroud)

我的观点是这样的:

<% if is_admin?(current_user) %>
    <%= hidden_field_tag "user[role_ids][]", nil %>
    <% Role.all.each do |role|%>
    <%= check_box_tag "user[role_ids][]", role.id, @user.role_ids.include?(role.id) %>
    <%= role.name %><br>
    <% end %>
<% end%>
</br></br>

<footer>
<nav>
<%= link_to "Update User", user_path(@user), :method => :put%>
</nav>
</footer>
Run Code Online (Sandbox Code Playgroud)

当我单击视图中的更新用户链接时.我收到此错误:

 ActionController::ParameterMissing in UsersController#update
 param not found: user
Run Code Online (Sandbox Code Playgroud)

错误的突出显示行是:

  private
  def …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails strong-parameters

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

Pyqt5设计师和Python 3.5

我是编码的新手.我真的非常喜欢它并且已经通过了许多Python 3的教程,并感受到基础知识的出现.我现在开始考虑gui创作.我首先开始使用tkinter,但很快就认定pyqt5对我有好处.我已经开始从zetcode中找到一个真正帮助我的教程.

我现在遇到了一个名为pyqt设计师的东西,它看起来像是我的弓的重要字符串....唯一的问题是,我在我的系统上找不到它.我可以找到pyqt designer.dll,但我知道如何启动.我正在运行Windows 10,pyqt5和最新的Python 3.5安装.

python windows python-3.x pyqt5 windows-10

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

如何在Laravel迁移中设置默认的DateTime()?

我正在尝试实现以下功能:

$table->dateTime('time')->default(new \DateTime());
Run Code Online (Sandbox Code Playgroud)

此确切的代码失败了,因为

[ErrorException]
类DateTime的对象无法转换为字符串

另一个问题是,我认为应该有更强大/更优雅的方式来解决此问题。那么,如何DateTime在迁移中正确设置默认值?

laravel laravel-migrations

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

保护您的facebook chatbot webhook的最佳做法是什么?

我在facebook messenger平台上开发聊天机器人.我浏览了Facebook文档,无法找到如何保护我webhook的随机通话.

例如,如果用户可以使用我的机器人购买东西,那么知道某人的userId的攻击者可以通过拨打我的webhook来开始放置未经授权的订单.

我有几个关于如何保护这个的想法.

1)将我的api白名单只用于来自facebook的电话.
2)使用回发调用创建类似CSRF令牌的东西.

有任何想法吗?

facebook-chatbot

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

如何在ubuntu 16.04LTS中安装Appium

我是ubuntu的新手,我正在尝试在ubuntu 16.04中安装appium,我使用这些命令在ubuntu中安装appium,但是安装失败了.

brew install node  
npm install -g appium
Run Code Online (Sandbox Code Playgroud)

ubuntu appium ubuntu-16.04

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