因客户有个检查图像包含两个部位 需在看图工具的两个tab页查看,看图工具根据dicom的uid进行分页,所以需修改其中的一个部位的uid:
方法代码:
dcm4che版本:5.16.3
参数:文件路径
import org.dcm4che3.data.Attributes;
import org.dcm4che3.data.Tag;
import org.dcm4che3.data.VR;
import org.dcm4che3.io.DicomInputStream;
import org.dcm4che3.io.DicomOutputStream;
public static void DicomSet(String filePath) throws IOException {
DicomInputStream in = null;
Attributes attr = null;
in =new
DicomInputStream(new File(filePath));
attr =in.readDataset(-1,-1);
//attr.setString(int tag,VR vr,String s)
//attr.setString(Tag.你要改动的tag,VR值类型-建议用dicom阅览器找对应tag比较不容易弄错,String-你要修改的值)
attr.setString(Tag.StudyInstanceUID,VR.SH,"1.2.276.0.7230010.3.1.2.2510383562.5660.1679039928.1138");
DicomOutputStream dout = null;
dout =new
DicomOutputStream(new File(filePath));
//Attribute写入,完成更改
dout.writeDataset(in.getFileMetaInformation(),attr);
//老老实实挨个关掉清理
dout.finish();
dout.flush();
dout.close();
in.close();
}