問題タブ [readline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
10883 参照

c# - C# から ReadLine() を呼び出した後、FileStream の位置がずれている

一度に数行のチャンクで(小さい)ファイルを読み取ろうとしていますが、特定のチャンクの先頭に戻る必要があります。

問題は、最初の呼び出しの後です

streamReader.BaseStream.Positionプロパティはファイルの最後に設定されています! バックステージでキャッシングが行われていると仮定しますが、このプロパティには、そのファイルから使用したバイト数が反映されると予想していまし。はい、ファイルには複数の行があります:-)

たとえば、ReadLine()再度呼び出すと、ファイル内の次の行が (自然に) 返されます。これは、以前に によって報告された位置から開始されませんstreamReader.BaseStream.Position

最初の行が終了する実際の位置を見つけて、後でそこに戻るにはどうすればよいですか?

ReadLine() によって返される文字列の長さを追加することによって、手動で簿記を行うことしか考えられませんが、ここでもいくつかの注意事項があります。

  • ReadLine() は、可変長の改行文字を取り除きます ('\n' ですか? "\r\n" ですか? など)。
  • これが可変長文字でうまくいくかどうかはわかりません

...だから今、私の唯一の選択肢は、ファイルの解析方法を再考することだと思われるので、巻き戻す必要はありません。

それが役立つ場合は、次のようにファイルを開きます。

助言がありますか?

0 投票する
4 に答える
2964 参照

c# - How do I count the number of bytes read by TextReader.ReadLine()?

I am parsing a very large file of records (one per line, each of varying length), and I'd like to keep track of the number of bytes I've read in the file so that I may recover in the event of a failure.

I wrote the following:

However this doesn't work since ReadLine() strips any CR/LF characters in the line. Furthermore, a line may be terminated by either CR, LF, or CRLF characters, which means I can't just add 1 to bytesRead.

Is there an easy way to get the actual line length, or do I write my own ReadLine() method in terms of the granular Read() operations?

0 投票する
1 に答える
1100 参照

python - sshの使用時にbashに「読み取り」プロンプトがありませんか?

ここで本当に明らかな何かが欠けていると教えてください:

ssh を使用する場合、"RDY>" プロンプトが表示されないことに注意してください。「readline」パッケージを使用すると、Pythonでも同じことがわかります。理由を知っている人はいますか?

0 投票する
2 に答える
2201 参照

python - OS XのPythonのraw_inputでlibeditの代わりにreadlineを使用することは可能ですか?

readlineモジュールのドキュメントから、次のように記載されています。

MacOS Xでは、readlineモジュールは、GNUreadlineの代わりにlibeditライブラリを使用して実装できます。libeditの設定ファイルは、GNUreadlineの設定ファイルとは異なります。

/usr/lib/libreadline.dylibたとえば、readlineライブラリを使用したり、MacPortsやHomebrewでコンパイルしたりすることは可能ですか?

0 投票する
1 に答える
3222 参照

python - Debian 4.3.2 に Python 2.6.5 をインストールしようとすると readline をビルドできない

Debian 4.3.2.1-1 を実行している Web サーバーに Python 2.6.5 をインストールしようとしています。tarball を解凍し、「./configure --prefix /usr/」を実行してから、「make」を実行しました。このメッセージを見ました。

大したことではないと思ったので、残りのインストールを進めました。これは、ルートとして「make install」を実行しただけだと思います。

新しいバージョンの Python を実行してみましたが、うまくいきましたが、いくつかの動作がおかしくなりました。対話型プロンプトでの通常のキーボード ショートカットが機能しませんでした。readline をインポートしようとしましたが、インタープリターはそれを見つけることができませんでした。それを機能させる方法はありますか?「make」が教えてくれたようにsetup.pyを調べてみましたが、私にとって役立つ手がかりは見つかりませんでした。私は本当にreadlineを動かしたいと思っています。他のモジュールはあまり気にしません。

編集:これは DreamHost プライベート サーバー上にあります。それらには readline を備えた古いバージョンの Python がいくつかあり、正常に動作しているようです。この新しいバージョンで動作するようにしようとしています。

私は一種の Linux 初心者であり、パッケージのインストールや、RPM や apt-get の使用についてよく知らないことを付け加えたいと思います。

0 投票する
1 に答える
1847 参照

python - プログラムでraw_inputを中断する

Pythonのraw_inputをプログラムで中断する方法はありますか?具体的には、ユーザーにプロンプ​​トを表示するだけでなく、ソケット記述子をリッスンし(たとえば、selectを使用)、プロンプトを中断して何かを出力し、データがソケットに入った場合はプロンプトを再表示します。

sys.stdinで単にselectを実行するのではなく、raw_inputを使用する理由は、readlineモジュールを使用してプロンプトの行編集機能を提供したいからです。

0 投票する
2 に答える
12104 参照

android - ローカル (res/raw) ファイルを 1 行ずつ読み取る方法は?

res/raw ディレクトリにテキスト ファイルがあります。ファイルを 1 行ずつ読み込みたいのですが、Android のセキュリティ制限により、FileReader と BufferedReader が失敗します。他にどうすればいいですか?

0 投票する
1 に答える
732 参照

python - 対話モードの問題で矢印キーを修正するために Python を再コンパイルする

私はPython 2.6(CentOSに必要なPython2.4.3と一緒にインストールされています)で作業しており、矢印キーやバックスペースなどに問題があります.

私はソースからコンパイルしましたが、解決策は readline-devel をインストールした後に再コンパイルすることだと思います:

Pythonシェルで矢印キーを押すとエスケープ文字が表示される

質問は、私は多くのモジュールをインストールしていて、何かが壊れるのではないかと心配しています。既存のモジュールを壊さずに再コンパイルできるのは正常ですか?

ありがとう

0 投票する
3 に答える
1965 参照

ruby-on-rails - UbuntuへのHerokuのインストールLucidLynxが壊れています

Ruby on Railsアプリをどこかで無料でホストしようとしていますが、Herokuは私の最後のリソースのように見えます。Linuxで動作するはずであり、gemはエラーなしでインストールされますが、Herokuコマンドを実行すると、いくつかのエラーが発生し、すべてが接続され、失敗した「require」について話します。私はそれをコードで調べました、そしてそれは言います:

それだ。

私は見つけて考えることができるlibreadlineのすべてのバリエーションをインストールしようとしましたが、どれも違いはありません。ここに何かアイデアはありますか?

0 投票する
2 に答える
1013 参照

python - Python でテキストを raw_input に挿入する (readine を回避するための) クロスプラットフォームの方法

アカウント情報を編集する機能を含むアプリケーション (CLI) があります。これは、質問をして、回答に古い値を入力して編集できるようにすることで行われます。現在、私はこれを行うためにreadlineモジュールを使用しています。このモジュールを回避する同じことを別の方法で実行したいと思います ( Python が実行されるオペレーティング システムと 同様に、Windowsのすべての機能でアプリを実行できるようにしたい)。

私はもともと次のウェブサイトで次のコードを見つけました (関数に合うように少し変更しました) が、そのスレッドは 4 年前のものなので、ここで質問することにしました。http://bytes.com/topic/python/answers/471407-default-editable-string-raw_input

更新: readline の代替 (PyReadline など) は必ずしも必要ではありません。同じ結果が必要です。質問を更新して、必ずしも Windows と GNU/Linux で実行する必要はなく、python でサポートされているすべての OS で実行する必要があることに言及しました。したがって、基本的には、非常に基本的な関数 (sys.stdin など) のみを使用してください。