質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

1036閲覧

センサーからの値を改行させずに復帰させる

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2017/11/30 02:31

編集2017/11/30 02:33

java

1import android.app.Activity; 2import android.content.Context; 3import android.hardware.Sensor; 4import android.hardware.SensorEvent; 5import android.hardware.SensorEventListener; 6import android.hardware.SensorManager; 7import android.os.AsyncTask; 8import android.os.Bundle; 9import android.view.SurfaceHolder; 10import java.io.BufferedWriter; 11import java.io.IOException; 12import java.io.OutputStream; 13import java.io.OutputStreamWriter; 14import java.net.Socket; 15import java.util.List; 16 17 18public class MainActivity extends Activity 19 implements SensorEventListener, SurfaceHolder.Callback{ 20 21 SensorManager mSensorManager; 22 Sensor mAccSensor; 23 24 float mVX; 25 float mVY; 26 // float mVZ; 27 28 @Override 29 protected void onCreate(Bundle savedInstanceState) { 30 super.onCreate(savedInstanceState); 31 setContentView(R.layout.activity_main); 32 33 mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); 34 mAccSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE); 35 } 36 37 @Override 38 protected void onStop() { 39 super.onStop(); 40 mSensorManager.unregisterListener(this); 41 } 42 43 @Override 44 protected void onResume() { 45 super.onResume(); 46 List<Sensor> sensors = mSensorManager.getSensorList(Sensor.TYPE_GYROSCOPE); 47 if(sensors.size() > 0) { 48 Sensor s = sensors.get(0); 49 mSensorManager.registerListener(this, s, SensorManager.SENSOR_DELAY_UI); 50 } 51 } 52 53 public void connect(final String str) { 54 new AsyncTask<Void, Void, String>() { 55 56 57 @Override 58 protected String doInBackground(Void... voids) { 59 try { 60 61 Socket socket = new Socket("10.0.33.13",4000); 62 OutputStream os = socket.getOutputStream(); 63 64 BufferedWriter bufwriter 65 = new BufferedWriter(new OutputStreamWriter( os ) ); 66 bufwriter.write(str ); 67 //bufwriter.flush(); 68 69 bufwriter.close(); 70 socket.close(); 71 72 } catch (IOException e) { 73 e.printStackTrace(); 74 } 75 return null; 76 } 77 }.execute(); 78 } 79 80 @Override 81 public void onSensorChanged(SensorEvent event) { 82 if(event.sensor.getType() == Sensor.TYPE_GYROSCOPE) { 83 84 85 float y = event.values[1]; 86 float x = event.values[2]; 87 //float z = event.values[3]; 88 89 mVX = mVX + x; 90 mVY = mVY + y; 91 //mVZ = mVZ + z; 92 93 94 String str = "X:" + mVX 95 + "Y:" + mVY ; 96 97 connect(str); 98 } 99 } 100 101 @Override 102 public void onAccuracyChanged(Sensor sensor, int accuracy) {//使わない 103 } 104 105 @Override 106 public void surfaceCreated(SurfaceHolder holder) { 107 registerSensor(); 108 } 109 110 public void registerSensor() { 111 mSensorManager.registerListener(this, mAccSensor, SensorManager.SENSOR_DELAY_GAME); 112 } 113 114 @Override 115 public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { 116 117 mVX = 0; 118 mVY = 0; 119 // mVZ = 0; 120 } 121 122 @Override 123 public void surfaceDestroyed(SurfaceHolder holder) { 124 125 mSensorManager.unregisterListener(this); 126 } 127} 128

センサーから読み取った値をconnect()でサーバー側に送信し、サーバー側のターミナルで連続して表示することはできたのですが、ターミナルに改行せずに行頭に戻る命令を送る方法がわかりません。
サーバー側のプログラムに System.out.println(reader.readLine() + "\r");と書いても改行されるのですがどうすればいいでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

printlnは最後に必ず改行します。printメソッドなら改行しません。

投稿2017/11/30 02:37

swordone

総合スコア20651

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/11/30 02:39

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問