C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: C# エクセル読込時セル内改行の削除


(過去ログ 168 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■96842 / inTopicNo.1)  C# エクセル読込時セル内改行の削除
  
□投稿者/ ぽっくる (1回)-(2021/02/18(Thu) 10:54:12)

分類:[C#] 

エクセルデータをC#に読込んだデータから、セル内の改行を削除したいのですが、方法がわかりません。
読みだしたデータには下記のようにReplaceメソッドを使ってみましたが、改行にあたる文字が適切でないのか、改行を削除できません。

for (int j = 1; j <= width2; j++)
{
DataString2[1, j] = Convert.ToString(RangeArray2[1, j]);
DataString2[1, j] = DataString2[1, j].Replace(Environment.NewLine, "");
DataString2[1, j] = DataString2[1, j].Replace("LF", "");
DataString2[1, j] = DataString2[1, j].Replace("CRLF", "");
DataString2[1, j] = DataString2[1, j].Replace("0A", "");
DataString2[1, j] = DataString2[1, j].Replace("0D", "");
}

RangeArray2が読みだしたデータです。
大変すみませんが、ご教授頂けたら幸いです。
引用返信 編集キー/
■96844 / inTopicNo.2)  Re[1]: C# エクセル読込時セル内改行の削除
□投稿者/ Hongliang (1155回)-(2021/02/18(Thu) 11:15:37)
改行文字をC#のソースコードにて記述する場合、バックスラッシュを使ったエスケープシーケンスを使用します。
CR は "\r"
LF は "\n"
です。
引用返信 編集キー/
■96845 / inTopicNo.3)  Re[1]: C# エクセル読込時セル内改行の削除
□投稿者/ 魔界の仮面弁士 (2973回)-(2021/02/18(Thu) 11:52:35)
No96842 (ぽっくる さん) に返信
> エクセルデータをC#に読込んだデータから、セル内の改行を削除したいのですが、方法がわかりません。

どうやって読み込んだのかはさておき、その読み込まれたデータが
RangeArray2 に格納されている、という状況なのですよね。

それではまず、RangeArray2 のデータ型を教えてください。

わざわざ Convert.ToString しているところを見ると、
string 型の配列として宣言されているわけでは無さそうですね。

object 型の配列なのか、あるいは dynamic でしょうか。
それとも、2 引数のインデクサを持つコレクションとか?



> 改行にあたる文字が適切でないのか、改行を削除できません。

Excel データの場合、セル内改行はラインフィード '\n' となることが一般的なので、
.Replace("\n", "") になろうかとは思いますが、その前に!


そのセル内改行データは現在、どのように読み込まれているのですか?

<1> RangeArray2[行, 列] の中に、改行データが含まれている。
<2> RangeArray2[行, 列] のセル位置は正しいが、セル内の改行データが別の char に化けた状態
<3> RangeArray2 のセル座標が改行によって崩れてしまい、複数の行に分割されてしまっている。


現在の状況が分からないことには、それに対する対策の打ちようがありませんので、
コードを書いて試行錯誤する前に、状況確認が先だと思いますよ。

<2>であったなら、データを補正するのではなく、読み込み処理そのものの見直しが必要ですし、
<1>であれば、その改行データが、"\r\n" なのか "\r" なのか "\n" なのかそれ以外で
保持されているかを調べる必要があるでしょうね。
引用返信 編集キー/
■97327 / inTopicNo.4)  Re[2]: C# エクセル読込時セル内改行の削除
□投稿者/ Medicamento Eretrol (3回)-(2021/04/26(Mon) 18:19:56)
Medicamento Eretrol さんの Web サイト
Nenhum desses exerccios divulgados na malha possui comprova鈬o cientfica.
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -